给定一系列文本。例如 :
11 21 33 45 23 45 66 98 99 92 45
把其中的奇数输出到odds文本 把剩余的输出到evens文本
我本是通过这样
Scanner in=new Scanner(Paths.get("C:\\Users\\HASEE\\Desktop\\numbers.txt"),"UTF-8");
PrintWriter out1=new PrintWriter("C:\\Users\\HASEE\\Desktop\\odds.txt");
PrintWriter out2=new PrintWriter("C:\\Users\\HASEE\\Desktop\\evens.txt");
while (in.hasNext()) {
String a =in.nextLine();
char [] number = a.toCharArray();
for(i=1;i<number.length;i=i+2)
把读入的string转换成char数组 然后再按照位置(都是2位数字+1个空格)判断数字的奇偶性再选择输出。。这样一旦不是如此整齐的数字排列就不起作用了。
所以希望有前辈能指点一二
在你的基础上 利用2个数字之间的空格,将String a 转为数组:
String a =in.nextLine();
String[] temp = a.split(" ");
接下来 遍历temp,判断每一个元素是否是数字,如果是,就转为int,然后除以2取余,得到0就归到evens,得到1就归到odds