java字符串

java字符串

一些简单的实现我就直接贴代码,不浪费大家的时间

 var s1 = new String("The Old Man and the Sea is one of");
        //求子串
        //String   substring (int beginIndex)  返回一个字符串,该字符串是此字符串的子字符串。
        //String  substring (int beginIndex, int endIndex)  返回一个字符串,该字符串是此字符串的子字符串。
        var s2 = s1.substring(2); // 在一个位置之后的全部字符串
        var s3 = s1.substring(2,6);  // 取一个范围内的字符串
        System.out.println("求子串 s2:" + s2);
        System.out.println("求子串 s2 " + s3);
        //字符串的拼接
        //String  concat (String str)  将指定的字符串连接到此字符串的末尾。
        var s4 = new String("hello");
        var s5 = new String("world");
        System.out.println("连接后的字符串 :" + s4.concat(s5));
        //设置以某一个字符隔开字符串中的字符
        var join = String.join("\\", "h", "e", "l", "l", "o");
        System.out.println("join: " + join);
        //设置一个字符串重复出现n次
        var repeat = "abc".repeat(3);
        System.out.println("repeat: "+ repeat);
        //相等操作  --- == 操作看下方解释
        //boolean equals (Object anObject) 将此字符串与指定的对象进行比较。
        //boolean equalsIgnoreCase (String anotherString) 将此String与 another 进行比较String,忽略大小写的考虑。
        System.out.println("不区分大小写:" + "abc".equals("ABC"));
        System.out.println("区分大小写:" + "abc".equalsIgnoreCase("ABC"));
         //字符串的长度  -- 看下方解释
        System.out.println("s1长度:" + s1.length());
        //字符串构建器  看文档吧和String注意事项一样
        var s7 = new StringBuilder("abc");

在java中将String类型设为不可变的,这样的虽然对于字符串的直接修改带来了一些影响,但是他最好的一个特点是可以共享,意思就是在java虚拟机中存在一个存储池用来存放字符串的信息,当我们在保存一个字符串s1时,虚拟机会首先查看存储池的字符串,有无与字符串s1相同的,如果有则将新的字符串指向这个位置,如果没有则将这个字符串s1写入到该存储池中。(注意这个字符串只是字面量共享,互相不影响操作)

在java中对于**==操作我们需要知道该操作比较的存储位置是否相同**而不是其内容是否相同,

在老师教导以及我们的理解中我们都认为,length是返回字符串的长度,就连java开发文档也是这样的解释 int length() 返回此字符串的长度。,其实不然,length是返回字符串的代码单元,接下来我们先了解对于**码点 代码单元**理解,然后再取出一个实例解释:

 //字符串的长度
        String s6 = new String("hi\uD835\uDD46");
        System.out.println("代码单元长度:" + s6.length());
        System.out.println("码点长度:"+ s6.codePointCount(0,s6.length()));
        //charAT也是返回的是代码单元
        System.out.println("取某一个位置的代码单元:" + s6.charAt(2));

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值