Java中字符串相关内容(上)

一、概要:日常Java开发中,字符串用到的非常多,对于字符串我们不得不做到熟悉掌握使用

二、字符串简介:多个字符连接在一起

三、常见字符串分类:

  1、字符串String:

    1.1、String是不可变对象,加减操作性较差

    1.2、String的创建方式:

        1.2.1:直接赋值:String str = "123";

        1.2.2:通过new创建字符串对象:String str = new String("123");

        1.2.3:两种创建方式的不同:

            1.2.3.1:直接赋值是在栈中创建一个str变量,直接引用方法区中运行时常量池中的常量地址;使用这种方式要么会在常量池中创建一个对象,要么就是不创建对象;

                如果常量池中存在需要的常量地址就不会创建,没有就创建一个常量,并且把地址赋值给栈中str变量

            1.2.3.2:通过创建对象赋值是堆中的对象地址引用方法区常量池中的常量地址,然后栈中创建的str变量再去引用堆中的对象地址,使用这种方法至少要创建一个对象

    1.3、String字符串值为空问题:

        1.3.1:String s = null;  还没有初始化,还没有分配内存空间

        1.3.2:String s = "";   已经初始化,开辟了内存空间,只是内容为空

    1.4、字符串常用方法:

        1.4.1:把一个char类型数组转换成字符串:new String(char[] c);

        1.4.2:把一个字符串转换为char类型数组:str.toCharArray();

        1.4.3:获取字符串当中的某一个字符:str.charAt(字符角标)

        1.4.4:返回一个子字符串在母字符串当中第一次出现的位置角标:str1.indexOf(str2)

        1.4.5:返回一个子字符串在母字符串当中最后一次出现的位置角标:str1.lastIndexOf(str2)

        1.4.6:字符串当中字母转成小写字母:str.toLowerCase()

        1.4.7:字符串当中字母转成大写字母:str.toUpperCase()

        1.4.8:忽略大小写比较两个字符串是否相等:str1.equalsIgnoreCase(str2)

        1.4.9:将一个新字符串s2连接到字符串s1末尾:s1.concat(s2)

        1.4.10:判断字符串str1是否包含字符串str2:str1.contains(str2);

        1.4.11:判断字符串str1是否以字符串str2开头:str1.startsWith(str2);

        1.4.12:判断字符串str1是否以字符串str2结尾:str1.endsWith(str2);

        1.4.13:将字符串str中所有出现的字符串s替换成字符串x:str.replace(s, x);

        1.4.14:根据字符串str中出现的内容按照正则表达式x进行切割:str.split(x);

        1.4.15:根据字符串str中内容的角标对字符串进行截取:str.substring(index);注意包含角标所在的字符

        1.4.16:根据字符串str中内容的角标对字符串进行截取:str.substring(beginIndex,endIndex);注意包含开始角标所在字符,不包含结束角标所在字符

        1.4.17:去除字符串str前后两端的空格:str.trim();

        1.4.18:返回其他基本数据类型的字符串表示形式:String.valueOf(数据类型);

        

 

        

 

posted @ 2022-07-13 11:08  忘chuan  阅读(45)  评论(0编辑  收藏  举报