【JAVA SE基础篇】32.String类
2021-05-07 16:28
标签:一个 code efi 完成 并且 mic nic har 搜索 1.字符串 1.String类又称作不可变字符序列 2.String位于java.lang包中,java程序默认导入java.lang包下所有的类 3.java字符串就是Unicode字符序列,例如字符串“java”就是4个Unicode字符:‘j’,‘a’,‘v’,‘a’组成的 4.java中没有内置的字符串类型,而是在标准的java类库中提供了一个预定义的类String,每个用双引号括起来的字符串都是String类的一个实例 5.java中允许使用符号“+”把两个字符串连接起来。 例: 6.字符串连接:“+”把两个字符串按照给定的顺序连接在一起,并且是完全按照给定的形式 当“+”号运算符两侧的操作数中只有一个是字符串(String)类型,系统会自动将另一个操作数转换为字符串再进行输出 例: 2.常量池 常量池分为三种:全局字符串常量池,class文件常量池,运行时常量池 1.全局字符串常量池 全局字符串常量池中存放的内容时在类加载完成后存到String Pool中的,在每个JVM中只有一份 存放的是字符串常量的引用值(在堆中生成字符串对象实例) 2.class文件常量池 class常量池是在编译的时候每个class都有的,在编译阶段,存放的是常量(文本字符串,final常量等)和符号引用 3.运行时常量池 运行时常量池是在类加载完成之后,将每个class常量池中的符号引用值转存到运行时常量池中,也就是说,每个class都有一个运行时常量池 类在解析后,将符号引用替换成直接引用,与全局常量池的引用值保持一致。 例: “==“符号比较的是等号两边的值以及地址是否相同 str1和str2是通过一个对象创建出来的,共同处在同意常量池,所以地址也相同 而str3是新建的String对象,在一个新的常量池中,所以str3和str1的地址不同 因此在比较两个字符串值是否相同时,通常使用equals()方法。 例: 3.String类的常用方法 char charAt(int index): 返回指定索引处的 boolean equals(String other): 将此字符串与指定的对象比较。 boolean equalsIgnoreCase(String other):将此 int indexOf():返回指定字符在此字符串中第一次出现处的索引。 lastIndexOf():返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索。 int length(): 返回此字符串的长度。 String replace(char oldChar,char newChar):返回一个新的字符串,它是通过用 boolean startsWith(String prefix):测试此字符串是否以指定的前缀开始。 boolean endsWith(String prefix): 测试此字符串是否以指定的后缀结束 String substring(int beginIndex):返回一个新的字符串,它是此字符串的一个子字符串。 String substring(int beginIndex,int endIndex):返回一个新字符串,它是此字符串的一个子字符串。 String toLowerCase():使用默认语言环境的规则将此 String toUpperCase():使用默认语言环境的规则将此 String trim():返回字符串的副本,忽略前导空白和尾部空白。 例: 【JAVA SE基础篇】32.String类 标签:一个 code efi 完成 并且 mic nic har 搜索 原文地址:https://www.cnblogs.com/chengkuan/p/13179298.htmlchar
值。String
与另一个 String
比较,不考虑大小写。newChar
替换此字符串中出现的所有 oldChar
得到的。String
中的所有字符都转换为小写。String
中的所有字符都转换为大写。