文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

JAVA中split函数的常见用法实例

2024-04-02 19:55

关注

只写经常使用的,并不完整。

1.基本用法,将字符串按照指定字符串进行分割,例如:

public class Main {
    public static void main(String[] args) {
        String ss = "abcabcdefg";
        String[] split = ss.split("bc");
        for(String st:split){
            System.out.println(st);
        }
        System.out.println("分隔后字符串数组长度为");
        System.out.println(split.length);
    }
}

输出:

a
a
defg
分隔后字符串数组长度为
3

2.需要使用多个字符进行分割:使用split("[]"),其中[]里面存放需要分割的字符,注意,现在是按照字符来分割,例如:

public class Main {
    public static void main(String[] args) {
        String ss = "abcabcdefg";
        String[] split = ss.split("[bc]");
        for(String st:split){
            System.out.println(st);
        }
        System.out.println("分隔后字符串数组长度为");
        System.out.println(split.length);
    }
}

输出:

a

a

defg
分隔后字符串数组长度为
5

原因是将b和c都当作分割的字符。

用法其实上面两条差不多就可以了,重要的是一些特殊情况:

情况1:字符串中有连续的分割符,例如2中,b也是分割符c也是分隔符,那么在分割bc时会产生一个空字符(""),n个连续的分割符会产生n-1个空字符。下面是调试时的信息:

可以看到中间产生了空字符。

情况2:分割符出现在首部,那么出现几个分割符,就有多少个空字符。例如

public class Main {
    public static void main(String[] args) {
        String ss = "aaabcabcdefg";
        String[] split = ss.split("[a]");
        for(String st:split){
            System.out.println(st);
        }
        System.out.println("分隔后字符串数组长度为");
        System.out.println(split.length);
    }
}

输出:


bc
bcdefg
分隔后字符串数组长度为
5

前面3个a都是空字符。

情况3:有些正则表达式,这是一种特殊情况,如,*等符号需要添加转义字符\。

解决方法:

针对出现空字符,可以写一个遍历,长度为0的过滤掉。

for(String st:split){
            if(st.length()>0){
                list.add(st);
            }
        }

针对转义字符,编译器会报错,就试试添加\。

补充:Java中Split函数的用法技巧

在java.lang包中也有String.split()方法,与.net的类似,都是返回是一个字符型数组,但使用过程中还有一些小技巧。

如执行:"2|33|4".split("|")

出来的结果是:

""

2

|

3

3

|

4

奇怪吧,不过注意看一下API说明还是知道原因的.

java.lang.string.split

split 方法

将一个字符串分割为子字符串,然后将结果作为字符串数组返回。

stringObj.split([separator,[limit]])

参数

说明

split 方法的结果是一个字符串数组,在 stingObj 中每个出现 separator 的位置都要进行分解

所以正常的写法是这样的:

1、如果用“.”作为分隔的话,必须是如下写法:String.split("\\."),这样才能正确的分隔开,不能用String.split(".");

2、如果用“|”作为分隔的话,必须是如下写法:String.split("\\|"),这样才能正确的分隔开,不能用String.split("|");
“.”和“|”都是转义字符,必须得加"\\";

3、如果在一个字符串中有多个分隔符,可以用“|”作为连字符,比如:“a=1 andb =2 or c=3”,把三个都分隔出来,可以用String.split("and|or");

总结

到此这篇关于JAVA中split函数的常见用法的文章就介绍到这了,更多相关Java split函数用法内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     801人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     348人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     311人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     432人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     220人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯