import java.util.*;
public class A998 { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String csv = "sue,5,true,3";
Scanner scanner = new Scanner(csv);
scanner.useDelimiter(",");
int age = scanner.nextInt();
}}
这里面不是全部的数字
nextInt读取的是数字
所以抛异常
\\s*,\\s*然后
String temp = scanner.next();
int age = scanner.nextInt();
String temp2 = scanner.next();
int temp3 = scanner.nextInt();
而里面取到的任何部分都是字符串csv的一部分,比如你用,分开了,而得到的5也是一个字符串
下面的方法可以拿出5来:
import java.util.*;public class A998 { public static void main(String[] args) {
String csv = "sue,5,true,3";
Scanner scanner = new Scanner(csv);
scanner.useDelimiter(",");
List list = new ArrayList();
while (scanner.hasNext()) {
list.add(scanner.next());
}
int age = Integer.parseInt(list.get(1).toString());
System.out.println(age);
}
}
打印的结果是5