gpt4 book ai didi

Java List 转为 Short

转载 作者:行者123 更新时间:2023-12-02 05:42:10 26 4
gpt4 key购买 nike

我有这个字符串列表:

private final List<String> categoryList = Arrays.asList("27", "28, 96", "10", "15", "7", "98");

从上面的列表中,“28, 96”被视为一项(不是拼写错误)。除了那一项之外,将它们中的每一个都转换为短的没有问题:

for ( int m = 1; m < categoryList.size(); m++) {
short layerValue = Short.parseShort(categoryList.get(m));
}

我在转换“28, 96”时遇到此错误:

java.lang.NumberFormatException: For input string: "28, 96"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:492)
at java.lang.Short.parseShort(Short.java:117)
at java.lang.Short.parseShort(Short.java:143)

但是如果我直接添加它:

//pmTPSelectList[0].layerRateList = new short[] {layerValue};
pmTPSelectList[0].layerRateList = new short[] {28, 96};

它工作正常。所以,我很困惑为什么会这样,以及是否有办法转换它,因为我需要循环几个值来替换图层值(短)??? ty

最佳答案

您还需要在第二个 for 循环中拆分该部分

for (String shortstr : categoryList) {
String[] splitstr = shortstr.split(',');
for (String innershort: splitstr) {
short layerValue = Short.parseShort(innershort.trim());
// add it to a list
}
}

关于Java List<String> 转为 Short,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24425237/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com