簡體   English   中英

如何在Java中將包含數字的String []轉換為int []?

[英]How to convert String[] that contains numbers to int[] in Java?

我得到的是,這條指令給了我一個String[]對象:

string.trim().split(" ");

使用Arrays.asList(string.trim().split(" "))的內容類似於:
[4, 3, 2, 5, -10, 23, 30, 40, -3, 30]

因此,其內容由數字組成。 我想要的是將String[]對象轉換為int[]一個。 如何在不將每個字符串都解析為int的情況下做到這一點?

你可以做沒有循環,但你只能得到一個List<Integer>不是int[]

private static class IntegerAdapter extends AbstractList<Integer> implements List<Integer> {
    private final List<String> theList;

    public IntegerAdapter(List<String> strings) {
        this.theList = strings;
    }

    public IntegerAdapter(String[] strings) {
        this(Arrays.asList(strings));
    }

    @Override
    public Integer get(int index) {
        return Integer.parseInt(theList.get(index));
    }

    @Override
    public int size() {
        return theList.size();
    }
}

public void test(String[] args) {
    String test = "4 3 2 5 -10 23 30 40 -3 30";
    String[] split = test.split(" ");
    IntegerAdapter adapter = new IntegerAdapter(split);
    // Look ma! No loops :)
    System.out.println(adapter.get(4));
}

暫無
暫無

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

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