Java:String类(二)

1、字符串常见操作

1.1字符串比较

        String str1 = "hello";
        String str2 = "Hello";
        //不区分大小写比较
        System.out.println(str1.equalsIgnoreCase(str2));//true
        //compareTo方法 :按照字典序来比较
        // 相等:返回0  小于:返回内容小于0  大于:返回内容大于0
        String str1 = "hello";
        String str2 = "world";
        System.out.println(str1.compareTo(str2));//返回内容小于0

1.2字符串查找

        String str1 = "hello world";
        String str2 = "world";
        //1.通过contains方法判定是否有包含关系
        System.out.println(str1.contains(str2));//true
        //2.indexof方法不仅可以查看是否存在,还可查看字符串的所在位置
        //返回值是str2在str1中的下标位置
        // 如果查找的内容在str1中重复,返回最左侧字符串下表。
        System.out.println(str1.indexOf(str2));//6
        String str3 = "hello world world";
        //lastIndexOf  从右往左找最匹配的字符串
        System.out.println(str3.lastIndexOf(str2));
        //3.startsWith 以什么开头  endsWith  以什么结尾
        System.out.println(str1.startsWith("h"));//true
        System.out.println(str1.endsWith("d"));//true

1.3字符串替换

replaceAll  : 替换所有的指定内容

replaceFirst :替换首个内容

两者都不修改原始字符串,而是得到新的字符串

        String str1 = "hello world";
        String str2 = str1.replaceAll("hello","java");
        System.out.println(str2);//java world
        String str3 = str1.replaceFirst("ll","LL");
        System.out.println(str3);//heLLo world
        System.out.println(str1);//hello world

1.4字符串拆分

       //按照空格拆分
        String[] array = str1.split(" ");
        System.out.println(Arrays.toString(array));//[How, are, you]
        String str2 = "192.168.1.1";
        //正则表达式中 . 具有特定含义,需要通过\.查找文本
        //Java中\\表示一个文本\
        String[] array2 = str2.split("\\.");
        System.out.println(Arrays.toString(array2));//[192, 168, 1, 1]
        //多次拆分
        String str3 = "name=Bo&&age=10";
        String[] array3 = str3.split("&&");
        for (String tmp:array3) {
            String[] array4 = tmp.split("=");
            System.out.println(array4[0] + " : " + array4[1]);
            //name : Bo  age : 10
        }

1.5截取字符串

        //字符串截取substring方法
        String str1 = "helloworld";
        //从指定位置到结尾
        System.out.println(str1.substring(9));//d
        //截取部分内容  前闭后开区间
        System.out.println(str1.substring(5,7));//wo 

1.6其他操作方法

trim()方法:去掉字符串中的空白字符

        String str = " \n\t hello \n\t ";
        System.out.println(str);//     hello
        System.out.println(str.trim());//hello

toUpperCase() 方法: 字符串转大写

toLowerCase()方法:字符串转小写

        String str1 = "HELLO";
        System.out.println(str1.toLowerCase());//hello
        String str2 = "world";
        System.out.println(str2.toUpperCase());//WORLD

length()方法:获取字符串长度

        String str1 = "HELLO";
        System.out.println(str1.length());//5

isEmpty()方法:判断字符串是否为空,不是null,而是长度为0

        String str1 = "HELLO";
        String str2 = "";
        System.out.println(str1.isEmpty());//false
        System.out.println(str2.isEmpty());//true

2、StringBuffer和StringBuilder

String是不可变对象,为了方便字符串的修改,提供StringBuffer和StringBuilder类。

StringBuffer和StringBuilder的区别:StringBuffer与StringBuilder大部分功能是相似的,StringBuffer采用同步处理,属于线程安全操作;而StringBuilder未采用同步处理,属于线程不安全操作。

        //StringBuffer和StringBuilder
        //字符串反转
        StringBuffer str1 = new StringBuffer("helloworld");
        System.out.println(str1.reverse());//dlrowolleh
        //删除指定范围
        StringBuffer str2 = new StringBuffer("howareyou");
        System.out.println(str2.delete(5,6));//howaryou
        //插入数据
        StringBuffer str3 = new StringBuffer("howareyou");
        System.out.println(str3.insert(3,"old"));//howoldareyou

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值