我有欲由逗號分割的字符串(易處理):將字符串分割由逗號分隔的並存儲的值到一個int數組
String numbers = "1,2,3";
但是,我然後想每個元素轉換
int[][] array = new int [0][];
array[0] = new int[] {1,2,3};
我怎樣才能實現這一點:分割字符串轉換成一個int可以存儲在由逗號分隔的作爲int數組的?
我有欲由逗號分割的字符串(易處理):將字符串分割由逗號分隔的並存儲的值到一個int數組
String numbers = "1,2,3";
但是,我然後想每個元素轉換
int[][] array = new int [0][];
array[0] = new int[] {1,2,3};
我怎樣才能實現這一點:分割字符串轉換成一個int可以存儲在由逗號分隔的作爲int數組的?
String[] strArr = numbers.split(",");
int[][] array = new int[1][];
for(int i = 0; i < strArr.length; i++) {
array[0][i] = Integer.parseInt(strArr[i]);
}
二維數組是不必要的。您只需使用split
方法將逗號從字符串中拼接出來即可。然後將結果數組中的每個元素轉換爲一個int。這是它應該看起來像,
String numbers = "1,2,3";
String[] arr = numbers.split(",");
int[] numArr = new int[arr.length];
for(int i = 0; i < numArr.length; i++){
numArr[i] = Integer.parseInt(arr[i]);
}
你不需要二維數組,你可以使用簡單的數組。這將足以存儲這些數據。只需按','分割,然後遍歷該數組,解析int的所有內容並將分析後的值添加到新數組中。
String numbers = "1,2,3,4,5";
String[] splitedArr= numbers.split(",");
int[] arr = new int[splitedArr.length];
for(int i = 0; i < splitedArr.length; i++) {
arr[i] = Integer.parseInt(splitedArr[i]);
}
System.out.println(Arrays.toString(arr));
String s = "1,2,3";
StringTokenizer st = new StringTokenizer(s,",");
int[][] array = new int [0][];
int i = 0;
while(st.hasMoreElements()) {
int n = Integer.parseInt((String) st.nextElement());
array[0][i] = n;
i++;
}
這是快兩倍,String.split()
array[0] = Arrays.stream(numbers.split(","))
.mapToInt(Integer::parseInt)
.toArray();
這需要jdk 8 – Rao
儘管此代碼可能會回答問題,但提供有關* how *和/或* why *解決問題的其他上下文會提高答案的長期價值。 - [來自評論](http://stackoverflow.com/review/low-quality-posts/13312634) –
你不需要二維數組。拆分字符串並將其解析爲Integer。 – Rao
我可以使用Integer.parseint()將它分解爲一個整數後解析字符串,但是,我想知道如何創建逗號分隔的整數? – Yehudah
@Yhhudah檢查我的答案。如果我理解正確,我想這就是你要找的。 –