簡體   English   中英

分割用逗號分隔的字符串並將值存儲到int數組中

[英]Splitting a string separated by commas and storing the value into an int array

我有一個要用逗號分割的字符串(簡單的過程):

String numbers = "1,2,3";

但是,然后我想將拆分字符串的每個元素轉換為一個int,可以將其存儲在以逗號分隔的int數組中,如下所示:

int[][] array = new int [0][];
array[0] = new int[] {1,2,3};

我該如何實現?

二維數組是不必要的。 您需要做的就是使用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]);
}
String[] strArr = numbers.split(",");
int[][] array = new int[1][];
for(int i = 0; i < strArr.length; i++) {
    array[0][i] = Integer.parseInt(strArr[i]);
}

您不需要2D數組,可以使用簡單數組。 存儲這些數據就足夠了。 只需將其拆分為',',然后遍歷該數組,解析所有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();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM