Java 使用for循环将字符串[]添加到ArrayList中 扫描仪输入=新扫描仪(System.in); ArrayList联系人=新建ArrayList(); 字符串[]记录=新字符串[2]; int-x1=1; 而(x1==3){ 对于(int i=0;i
我假设您尝试多次将数组添加到列表中。您应该在while循环的每次迭代中添加不同的数组:Java 使用for循环将字符串[]添加到ArrayList中 扫描仪输入=新扫描仪(System.in); ArrayList联系人=新建ArrayList(); 字符串[]记录=新字符串[2]; int-x1=1; 而(x1==3){ 对于(int i=0;i,java,arraylist,Java,Arraylist,我假设您尝试多次将数组添加到列表中。您应该在while循环的每次迭代中添加不同的数组: Scanner input = new Scanner(System.in); ArrayList<String[]> contact = new ArrayList<String[]>(); String[] record = new String[2]; int x1=1; while(x1==3){ for(int i=0;i<2;i++){ r
Scanner input = new Scanner(System.in);
ArrayList<String[]> contact = new ArrayList<String[]>();
String[] record = new String[2];
int x1=1;
while(x1==3){
for(int i=0;i<2;i++){
record[i]=input.nextLine();
}
contact.add(record);
x1++;
}
while(x1我认为您的代码中有一个缺陷。我已尝试在下面解决它
while(x1<=3){
String[] record = new String[2];
for(int i=0;i<2;i++){
record[i]=input.nextLine();
}
contact.add(record);
x1++;
}
while(x1您应该在while循环中初始化字符串数组。这样您可以避免覆盖列表中的旧数组。如下所示
while(x1<=3){
//create new string array
String[] record = new String[2];
for(int i=0;i<2;i++){
record[i]=input.nextLine();
}
contact.add(record);
x1++;
}
while(x1)你总是从索引0开始迭代。所以你总是用最后一个字符串替换所有字符串。为什么要否决投票?我可以知道原因吗?这个代码已经被提问者接受了。
while (x1 <= 3) {
String[] record = new String[2];
for (int i = 0; i < 2; i++) {
record[i] = input.nextLine();
}
contact.add(record);
x1++;
}