在java中输入大小未知的数组
如何输入长度可能不同的数组?输入以空格分隔,并在按enter键时结束在java中输入大小未知的数组,java,arraylist,input,Java,Arraylist,Input,如何输入长度可能不同的数组?输入以空格分隔,并在按enter键时结束 public class ArrayInput { public static void main(String args[]){ ArrayList<Integer> al = new ArrayList<Integer>(); Scanner sc = new Scanner(System.in); while(){//what conditi
public class ArrayInput {
public static void main(String args[]){
ArrayList<Integer> al = new ArrayList<Integer>();
Scanner sc = new Scanner(System.in);
while(){//what condition to use here?
al.add(sc.nextInt());
}
}
}
使用
sc.nextLine()
读取整行,然后使用\\s+
读取split()
。这样,您就不必担心输入的大小(元素的数量)。使用Integer.parseInt()
将字符串解析为整数。由于所有输入都在一行中,因此可以读取整行,然后将其拆分为整数:
String line = sc.nextLine();
String[] tokens = line.split(" ");
int[] numbers = new int[tokens.length];
for (int i=0; i<numbers.length;i++)
numbers[i] = Integer.parseInt(tokens[i]);
String line=sc.nextLine();
String[]tokens=line.split(“”);
int[]number=新的int[tokens.length];
对于(int i=0;i所有整数都在同一行吗?如果是这样,只需从扫描仪中读取一行即可。您可以参考它,它对字符串、整数等有各种方法“\\s+”
而不是”
?
String line = sc.nextLine();
String[] tokens = line.split(" ");
int[] numbers = new int[tokens.length];
for (int i=0; i<numbers.length;i++)
numbers[i] = Integer.parseInt(tokens[i]);