找不到“。”
ArrayList
中的符号:
public class ArrayTools
{
//instance variables and constructors could be present, but are not necessary
//sumSection will return the sum of the numbers
//from start to stop, not including stop
public static int sumSection(int[] numArray, int start, int stop)
{
int sum=0;
for ( int i = start; i < stop; i++)
{
sum += numArray.get(i);
}
return sum;
}
get 是列表的方法,而不是数组的方法。
用途:
numArray[i]
这样使用是为了
List
:
sum += numArray.get(i);
但在你的情况下使用它作为
array
:
sum += numArray[i];
尝试使用
numArray[i]
代替 numArray.get(i)
。
get()
是List
的一种方法。
这是您应该首先尝试更改以修复
"."
错误的内容。那么你还有另一个问题。将数组转换为列表是多余的,因此您可以将其移出循环。
如果在循环中使用之前预先初始化列表。您必须在方法签名中使用
Integer[]
而不是 int[]
,因为 Arrays.asList()
不正确地将数组转换为 List
。
public static int sumSection(Integer[] numArray, int start, int stop)
{
int sum=0;
List<Integer> numList = Arrays.asList(numArray);
for ( int i = start; i < stop; i++)
{
sum += numList.get(i);
}
return sum;
}
您尝试使用数组外的
get()
方法,但数组是未实现 List
接口的对象。
您误解了
numArray.get(i)
是错误的,numArray
不是List
。如果你想使用 List 及其 get()
方法,你应该在使用该对象的 List
之前将其转换为 get()
。