这个问题在这里已有答案:
我对这段代码感到有点困惑(我没有创建它:我从教程中获取它):
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())”
?
names.length
返回数组的大小。它不是一种方法,只适用于数组。你在longestName.length()
类的.length
方法和数组的length()
字段之间感到困惑。
String
方法用于检索给定length
的长度,而length()
(字段不是方法)用于获取给定数组的长度。
数组长度:我应该使用括号吗?
你没有选择数组,你需要使用String
,因为它没有一个名为names.length
的吸气剂。