我需要把存儲在字符串中的所有數值到數組:如何從字符串中提取數字到一個數組
String str = "12,1,222,55";
如果我這樣做,那麼它會合並所有的數字:
str = str.replaceAll("\\D+","");
如何得到這樣的事情?:
int[] result = new int[]{12,1,122,55};
我需要把存儲在字符串中的所有數值到數組:如何從字符串中提取數字到一個數組
String str = "12,1,222,55";
如果我這樣做,那麼它會合並所有的數字:
str = str.replaceAll("\\D+","");
如何得到這樣的事情?:
int[] result = new int[]{12,1,122,55};
首先拆分字符串。然後在字符串數組的每個元素解析到新陣列
String[] s=str.split("\\D+");
int[] intarray=new int[s.length];
for(int i=0;i<s.length;i++){
intarray[i]=Integer.parseInt(s[i]);
}
String[] numbers = str.split(",");
並添加數字int[]
與Integer.parseInt(numbers[i]);
如果您不知道輸入字符串的確切大小,我建議使用ArrayList爲此目的。如果你知道會有4個值,然後去一個數組。
只需根據一個或多個非數字字符拆分輸入,然後將每個元素的數據類型轉換爲整數。
String[] parts = str.split("\\D+");
眼望Java文檔 – thermite 2015-03-02 16:30:51
string.split和的Integer.parseInt只要不合並。只需將','和隱含元素拆分爲int並存儲一個數組。 – 2015-03-02 16:31:16