String类的split方法,字符串分割成数组

本文详细介绍了Java中String类的split方法使用技巧,包括如何利用该方法将字符串按逗号等分隔符拆分为数组,并处理分隔后可能出现的空字符串问题。同时,通过实例演示了如何指定数组长度以避免异常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

String类的split方法可以将字符串按照特定的分隔符拆分成字符串数组。

String[] split(String regex)

参数regex为正则表达式,以regex所表示的字符串为分隔符,将字符串拆分成字符串数组。

1、逗号分隔字符串成数组:

    public static void main (String[] args) throws ParseException {

        String str1 = "A,B,C,D";
        String[] arr1 = str1.split(",");
        System.out.println(Arrays.toString(arr1));
    }

输出结果:

[A, B, C, D]


2、分隔字符串时,结尾的空字符串会被舍弃,见下图中的字符串str3,长度为3。

此时易出现arr3[3]操作,导致出现异常(ArrayIndexOutOfBoundsException)。

    public static void main (String[] args) throws ParseException {
    public static void main (String[] args) throws ParseException {

        String str1 = "A,B,C,D";//正常字符串
        String str2 = "A,B,,D"; //字符串中间少值
        String str3 = "A,B,C,"; //字符串后面少值

        String[] arr1 = str1.split(",");
        String[] arr2 = str2.split(",");
        String[] arr3 = str3.split(",");

        System.out.println("数组arr1:"+Arrays.toString(arr1) + "数组长度:" + arr1.length);
        System.out.println("数组arr2:"+Arrays.toString(arr2) + "数组长度:" + arr2.length);
        System.out.println("数组arr3:"+Arrays.toString(arr3) + "数组长度:" + arr3.length);
    }

输出结果:

数组arr1:[A, B, C, D]     数组长度:4
数组arr2:[A, B, , D]      数组长度:4
数组arr3:[A, B, C]        数组长度:3

3、为了防止(2)中出现的异常,split方法可以自己指定数组长度,以空白填充。

String[] split(String regex, int limit)
    public static void main (String[] args) throws ParseException {

        String str1 = "A,B,C,D";//正常字符串
        String str2 = "A,B,,D"; //字符串中间少值
        String str3 = "A,B,C,"; //字符串后面少值

        String[] arr1 = str1.split(",", 4);
        String[] arr2 = str2.split(",", 4);
        String[] arr3 = str3.split(",", 4);

        System.out.println("数组arr1:" + Arrays.toString(arr1) + "     数组长度:" + arr1.length);
        System.out.println("数组arr2:" + Arrays.toString(arr2) + "     数组长度:" + arr2.length);
        System.out.println("数组arr3:" + Arrays.toString(arr3) + "     数组长度:" + arr3.length);
    }

输出结果:

数组arr1:[A, B, C, D]     数组长度:4
数组arr2:[A, B, , D]     数组长度:4
数组arr3:[A, B, C, ]     数组长度:4
### 将字符串分割数组的方式 在 Python 中,可以通过内置的 `str.split()` 方法轻松实现将字符串转换为数组的操作。此方法会依据指定的分隔符对目标字符串进行切片操作,并最终返回一个由这些片段组的列表对象[^2]。 #### 基础语法结构 以下是关于 `split()` 函数的基础用法说明: - **无参调用**: 当未提供任何参数时,默认情况下将以所有的空白字符作为分界线(包括空格、制表符`\t`以及换行符`\n`等)。 ```python example_string = 'apple banana cherry' result_array = example_string.split() print(result_array) # Output: ['apple', 'banana', 'cherry'] ``` - **指定单一分割符**: 用户也可以自行设定某个特定字符充当界限标志物,如此一来只会在遇到该符号位置处分裂原串。 ```python comma_separated_values = "red,green,blue" color_list = comma_separated_values.split(',') print(color_list) # Output: ['red', 'green', 'blue'] ``` - **限定最大分裂次数(maxsplit)**: 参数允许控制最多执行几次划分行为,超出部分保持不变留在最后一个元素之中。 ```python limited_split_example = "one|two|three|four" partial_result = limited_split_example.split('|', 2) print(partial_result) # Output: ['one', 'two', 'three|four'] ``` 值得注意的是,在追求高效能场景下如果可能的话应当优先考虑传递现数组给函数而不是依赖于重新构建它们的结果因为这样可以获得更优的表现效果[^3]。 另外需要注意一点就是尽管上述例子都展示了如何创建简单的列表但从严格意义上讲这并不完全等于其他编程语言里的所谓“数组(Array)”概念毕竟Python中的list更加灵活支持存储不同型的数据项而不仅仅是固定大小同质化的数值集合而已[^4]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值