我正在尝试阅读这种模式......对此Scanner.useDelimiter
是什么?
此输入为:
489 490-1; 491-1; 492-1; 493-1; 494-1; 495-1; 496-1; 497-1; 498-1; 499-1; 500-1;
490 491-1; 492-1; 493-1; 494-1; 495-1; 496-1; 497-1; 498-1; 499-1; 500-1;
491 492-1; 493-1; 494-1; 495-1; 496-1; 497-1; 498-1; 499-1; 500-1;
492 493-1; 494-1; 495-1; 496-1; 497-1; 498-1; 499-1; 500-1;
493 494-1; 495-1; 496-1; 497-1; 498-1; 499-1; 500-1;
494 495-1; 496-1; 497-1; 498-1; 499-1; 500-1;
495 496-1; 497-1; 498-1; 499-1; 500-1;
496 497-1; 498-1; 499-1; 500-1;
497 498-1; 499-1; 500-1;
我需要的是将489,490,491放入一个对照阵列中,将490,1,491,1(第二列和它们)放在一个集合中。
我试过这个分隔符,但它没有工作:
Scanner(readerFile).useDelimiter("[^0-9]+");
因为他在我的while(readerFile.hasNextInt())
中停留在循环中而没有调用nextLine()
函数,所以读取集合中的所有输入。
while (readerFile.hasNextLine()){
readerFile.nextLine();
vector[i] = readerFile.nextInt();
while (readerFile.hasNextInt()){
linkedList.add(reader.nextInt());
}
}
如何控制下一行?
答案 0 :(得分:1)
我可能会这样做:
伪代码:
While has next line
s = next line
split = s.split(" ", 2);
vector[i] = split[0]; // or whatever you want to do with the first value
values = split[1].split(";")
foreach value in values
linkedList.add(value); // or whatever you want to do with the rest of the values