java數據輸入與分辨問題
import java.util.Scanner;
public class DataParse {
public DataParse() {
Scanner scanner = new Scanner(System.in);
String str = scanner.nextLine();
ArrayList<Integer> intArr = new ArrayList<Integer>();
ArrayList<Double> dblArr = new ArrayList<Double>();
ArrayList<String> strArr = new ArrayList<String>();
while(!str.isEmpty()) {
try {
Integer e = Integer.parseInt(str);
intArr.add(e);
}catch(NumberFormatException e) {
try {
Double d = Double.parseDouble(str);
dblArr.add(d);
}catch(NumberFormatException ex) {
strArr.add(str);
}
}
str = scanner.nextLine();
}
//
System.out.println("整數***計有" + intArr.size() + "個");
for(Integer e: intArr)System.out.println(e);
System.out.println("小數***計有" + dblArr.size() + "個");
for(Double e: dblArr)System.out.println(e);
System.out.println("字符串***計有" + strArr.size() + "個");
for(String e: strArr)System.out.println(e);
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
new DataParse();
}
}
// 輸入兩個回車結束輸入
1222
222
rr
44.66
55.7
ee
整數***計有2個
1222
222
小數***計有2個
44.66
55.7
字符串***計有2個
rr
ee