如何解决实际Java中是否存在Processing和Eclipse中的拆分功能?
.split() 函数是否存在? 当我输入:
public class Main {
public static void main(String[] args) {
String numbers = "1,2,3,4,5";
int[] numbers2 = (int[]) numbers.split(",");
System.out.println(numbers2);
}
}
它说:
Main.java:4: error: incompatible types: String[] cannot be converted to int[]
int[] numbers2 = (int[]) numbers.split(",");
^
1 error
解决方法
numbers.split(",")
返回一个 String
数组。您可以使用以下命令将 String
数组映射到 int
数组。
int[] numbers2 = Arrays.stream(numbers.split(",")).mapToInt(Integer::parseInt).toArray();
,
是的,引用类型 String 的方法 String[] split (String regex) 存在,这里是 Java SE 11 的引用 https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html#split(java.lang.String)。
但是您试图将引用类型String的变量强制转换到原始int类型的数组,这是无法直接实现的在 Java 中,无需解析。
-
将您的字符串变量拆分为字符串数组
String numbers = "1,2,3,4,5"; String[] numbersSplitted = numbers.split(",");
-
将字符串数组解析为整数数组
int [] numbersParsed = new int[numbersSplitted.length]; for(int i = 0; i < numbersSplitted.length; i++){ numbersParsed[i] = Integer.parseInt(numbersSplitted[i]); }
-
将解析后的数组或解析后的数组的每个元素打印到控制台
System.out.println(Arrays.toString(numbersParsed));
// or print each element of the parsed array for (int val : numbersParsed) { System.out.println(val); }
希望这会有所帮助!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。