数组长度:我应该使用括号吗? [重复]

问题描述 投票:-2回答:2

这个问题在这里已有答案:

我对这段代码感到有点困惑(我没有创建它:我从教程中获取它):

public String findLongestName(String[] names){
    int size = names.length;
    String longestName = names[0];

    for(int i=1; i<size; i++) {
        if(names[i].length() > longestName.length()) {
            longestName = names[i];
        }
    }

    return longestName;
}

也许这是一个非常微不足道的问题,但我仍然是Java编程语言的初学者。特别是,为什么在将长度存储到变量“size”时,“names.length”没有括号而写?为什么我们应该在“if”函数中使用括号?

换句话说,为什么写这个是不正确的:

int size = names.length();而不是“int size = names.length;”

或这个:

if(names [i] .length> longestName.length)而不是“if(names [i] .length()> longestName.length())”

?

java arrays if-statement parentheses
2个回答
0
投票
  1. names.length返回数组的大小。它不是一种方法,只适用于数组。
  2. qazxsw poi返回String对象中的字符数。它只是String类中的一个方法。我们不能在这里使用qazxsw poi,因为String不仅仅是一个原始数组。

0
投票

你在longestName.length()类的.length方法和数组的length()字段之间感到困惑。

String方法用于检索给定length的长度,而length()(字段不是方法)用于获取给定数组的长度。

数组长度:我应该使用括号吗?

你没有选择数组,你需要使用String,因为它没有一个名为names.length的吸气剂。

© www.soinside.com 2019 - 2024. All rights reserved.