常用类(字符串操作类)

Posted xszddsz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常用类(字符串操作类)相关的知识,希望对你有一定的参考价值。

java.lang.String

字符串不能称之为数据类型,因为他的长度不确定,可大可小,数据类型是有他特定的存储单元的。
字符串的内容不能发生改变:(原因如下)
1.里面用的是数组,数组不可变,没有必要扩展数组
2.字符串优化(字符串池的优化)
3.它里面的数值是常量
String string=new String();//重新创建字符串对象可以逃脱字符串的优化
 String string="abc";
        String string1="abc";
        System.out.println(string==string1);//true,没有new对象之前,他们的地址是相同的,“==”代表的是两个字符串的内容和地址都相同
        String s=new String("abc");

        System.out.println(s==string);//false
        /**
         * 哈希值的算法中不参与地址的运算,只要满足a.equals(b),那么他们两个的哈希值就相同
         */
        System.out.println(s.hashCode());
        System.out.println(string.hashCode())

String的相关方法:

String str="ahvshdvasvssvasis.java";
        str.substring(0,5);//截取方法 规定截取的范围即可,容易发生数组越界的异常
        str.substring(2);//表示从字符串的第二个开始截取
        str.indexOf("a");//搜索方法,用于检索字符串中指定的字符下标,如果没有搜索到此字符则返回-1;
        str.toCharArray();//将字符串类型转换为char[]数组类型
        str.lastIndexOf("a");//表示从字符串的最后面进行指定字符的检索
        str.replace("h","w");//替换制定的字符,前者是指定要替换的字符,后者是指出替换的字符
        str.toLowerCase();//把字符串中的大写全部转换成小写
        str.toUpperCase();//将字符串中的小写全部换成大写
        str.startsWith("");//字符串前缀比较
        str.endsWith("");//字符串后缀比较
        str.equalsIgnoreCase("");//不区分大小写比较字符串
        str.equals("");//区分大小写比较字符串
        String string="我是中国人";
        byte[] bytes=string.getBytes("gbk");
        String s=new String(bytes,"gbk");//字节转字符串,如果字符串转byte()有字符集的要求则byte转到字符串也必须有相同的字符集,不然会出现乱码
        System.out.println(s);
 String string="168.199.1.1";
        String[] s=string.split("\\.",4);//分割方法,按照相应的分割符号把字符分割,后面是要分隔的部分
        for (String string1 : s) 
            System.out.println(string1);
        

StringBuffer的相关方法:

String str="我爱我的祖国";
       StringBuffer stringBuffer=new StringBuffer();
       char[] strings=str.toCharArray();
        for (char string : strings) 
          stringBuffer.append(string);//StringBuffer数组里的长度可以改变
        

 

StringBuffer和StringBuild的区别

 

StringBuilder:没有加同步安全关键字

 

StringBuffer :加了同步安全关键字(synchronized)

 

同步安全就是一次只允许一个任务访问

 

如果一个线程访问操作字符串,你就用StringBuilder。

 

如果多个线程访问操作字符,你就用StringBuffer。

 

 

 

以上是关于常用类(字符串操作类)的主要内容,如果未能解决你的问题,请参考以下文章

这些String 类常用操作方法你都会使用吗?

huTool--工具类常用方法

Java 字符串常用操作(String类)

常用操作类库(验证类)

这些String 类常用操作方法你都会使用吗?

PHP中一些常用操作类代码示例