[英]Adding/Appending elements to an array - Java
我正在建立一个以参数,十进制数字数组和十进制阈值为参数的方法。 该方法应输出列表中大于阈值的所有数字。
我的计划是执行一个for循环并检查数组中的每个数字,如果该数字(i)大于阈值(x),则追加到我的结果列表中。 我的问题是我无法添加/添加到结果列表。
我有System.out.println("Nothing here");
只是为了帮助我看看它是否实际上正在通过for循环,但是我的IDE却在说调用list.add(a[i]);
是错的。 我是一个初级程序员,不确定如何解决此问题。 这是我的代码:
public class a10 {
public static void main(String[] args) {
double a[] = {42, 956, 3,4};
threshold(a, 2);
}
public static void threshold(double[] a, double x){
double list[] = {};
for (double i:a){
if (i<22){
list.add(a[i]);
}else{
System.out.println("Nothing here");
}
}
}
您的列表实际上是一个数组( double[]
),它不是使用add
方法的对象。 您应该将其视为常规数组(在您之间的情况下,您已初始化为空数组,这意味着您无法在其中设置任何元素)。
您应该做的是使用Lis的实际实现代替(例如ArrayList
),然后可以实际使用add
方法:
List<Double> result = new ArrayList<Double>();
for (double i:a){
if (i>x){
list.add(a[i]);
}else{
System.out.println("Nothing here");
}
}
还要注意,您已对数字“ 22”进行了硬编码(应使用x
)
Java中没有为数组add
方法的方法。 您应将清单声明为:
List<Double> list = new ArrayList<Double>(); //or some other type of list
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.