gpt4 book ai didi

java - 在 Java 中使用列表

转载 作者:行者123 更新时间:2023-11-29 05:30:57 25 4
gpt4 key购买 nike

所以我有一个问题,我不会详细讨论这个问题,因为我设法将它正确地编码到一个数组中。或者至少,将其编码到一个可以正常工作的数组中;如下:

static double getSolution (int n)
{
double [] w = new double [n];
w[0] = -1;
for (int i = 0; i < n; i++)
{
w[i + 1] = w[i] + (( 2 / 3*n ) * Math.cos (w[i]) );
}
double x = w[n];
return x;
}

然后我发现我并不是要使用数组对其进行编码,而是使用列表。我试过了,下面是我想出的代码:

static double getSolution1 (int n)
{
List <double> w = new ArrayList <double>();
w[0] = -1;
for (int i = 0; i < n; i++)
{
w[i+1] = w[i] + ((2 / 3*n ) * Math.cos (w[i]) );
}
return w[n];
}

现在我知道这从一开始就是错误的,但是有人能告诉我我哪里做错了什么吗?还;尝试编译时,我收到错误消息“找不到符号 - 类列表”。

编辑 1:我已经尝试将行更改为 Double 而不是许多人建议的 double,但我仍然遇到完全相同的编译错误。

编辑 2:因此,如果我要将数组转录成列表,正确的代码是什么?因为我真的很困惑我应该如何写出来。

最佳答案

使用

List <Double> w = new ArrayList <Double>();

代替

List <double> w = new ArrayList <double>();

double 是原始类型,但列表只接受对象,因此使用 DoubleDouble 是原始类型 double 的包装器。

编辑:

w[0] this is not list operation so if you are using this type of operation to access element you should use array. else mperform add remove operations 

检查列表操作:http://docs.oracle.com/javase/6/docs/api/java/util/List.html

你必须为包声明导入语句

import java.util.List;
import java.util.ArrayList;


所以你的方法变成了
使用数组

static double getSolution1 (int n)
{
Double[] w = new Double[n+1];
w[0] = -1d;
for (int i = 0; i < n; i++)
{
w[i+1] = w[i] + ((2 / 3*n ) * Math.cos (w[i]) );
}
return w[n];
}

使用列表

static double getSolution1(int n) {
List<Double> w = new ArrayList<Double>();
w.add(-1d);
for (int i = 0; i < n; i++) {
double d = w.get(i) + ((2 / 3 * n) * Math.cos(w.get(i)));
w.add(d);
}
return w.get(n);
}

关于java - 在 Java 中使用列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21105866/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com