【发布时间】:2016-03-14 02:04:20
【问题描述】:
您好,我正在尝试使用 arraylist 创建一个帕斯卡三角形,在下面的代码中的第 25 行出现并发修改异常,请帮助,我是使用 arraylist 的新手。 第 25 行是.. temp = i.next();
public class PascalT {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner s = new Scanner(System.in);
System.out.println("enter number");
int inp = s.nextInt();
s.close();
ArrayList<ArrayList<String>> g = new ArrayList<ArrayList<String>>(inp);
ArrayList<String> t1 = new ArrayList<>();
t1.add("1");
t1.add("1");
g.add(t1);
int ii = 0;
ArrayList<String> temp;
Iterator<ArrayList<String>> i = g.iterator();
while (i.hasNext() & ii < inp) {
temp = i.next();
Iterator<String> i2 = temp.iterator();
ArrayList<String> tmp = new ArrayList<String>();
tmp.add("1");
String temp2 = "";
while (i2.hasNext()) {
temp2 = Integer.toString(Integer.parseInt(i2.next())
+ Integer.parseInt(i2.next()));
tmp.add(temp2);
}
tmp.add("1");
g.add(tmp);
tmp.clear();
ii++;
}
for (ArrayList<String> al : g) {
System.out.println("line");
String row = "";
for (String sss : al) {
row = row + " " + sss;
}
System.out.println(row);
}
}
}
【问题讨论】:
-
我认为有一些更简单的方法可以做一个帕斯卡三角形。
-
@DevilsHnd 不,请阅读下面的答案。
-
真的...删除了我的评论。谢谢。
-
我已经删除了 Pascal 标签,因为您的问题与 Pascal 编程语言完全无关。这里的标签有特定的含义。请在使用之前阅读任何标签的说明,以便您了解 特定 含义并查看它是否适用于您的问题,而不是仅仅添加那些您觉得熟悉或不同的词比标签的意义。谢谢。