Java中如何将substring子串存入新数组
错误原因
line.substring()返回的是单个String类型值,你直接将其赋值给String[]类型的数组变量,违反Java强类型校验规则,必然会报错。
正确实现方案
场景1:提前明确需要存储的子串总数,使用静态数组
先初始化对应长度的空数组,再给对应下标位置赋值即可,示例:// 示例:把字符串每个字符单独截取为子串存入数组 String line = "sample text"; // 初始化长度匹配的字符串数组 String[] data = new String[line.length()]; for (int i = 0; i < line.length(); i++) { data[i] = line.substring(i, i + 1); }场景2:子串数量不固定,需要动态新增
优先用ArrayList存储,需要时再转换为数组:import java.util.ArrayList; import java.util.List; // 初始化动态列表 List<String> tempList = new ArrayList<>(); // 每次截取到子串后添加到列表 tempList.add(line.substring(i, i + 1)); // 按需转换为字符串数组 String[] data = tempList.toArray(new String[0]);
内容的提问来源于stack exchange,提问作者Jeff
相关产品推荐
相关产品推荐

