携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第12天,点击查看活动详情
1️⃣前言
大家好,我是翼同学,今天笔记的内容是:
- String类
2️⃣内容
🌱概述
java字符串就是一系列Unicode字符序列。事实上,java没有内置的字符串类型,而是在标准类库中提供一个预定义类String类。一个字符串可以存储0个到任意个字符,这些字符由双引号" "括起来,组成字符串。并且注意到,String类属于引用类型。
🌳方法
在String类中,也提供了很多实用的方法。
下面以字符串 "Helloworld" 为例,举几个常见的方法。
一、length
length方法用于放回字符串的长度。
需要注意的是,返回的长度指的是字符串中Unicode代码单元的数量。大多数常用的Unicode字符使用一个代码单元就可以表示,但是有些辅助字符则需要一对代码单元才能表示。
举个例子:
"Helloworld".length(); // 放回:10
当然,如果想得到实际长度,可以调用codePointCount方法。即str.codePointCount(0, str.length());
举个例子:
"Helloworld".codePointCount(0, "Helloworld".length()) // 返回: 10
二、substring
substring方法用于提取子串,可以接受的参数形式有两种。
- 第一种方式是接受一个参数,
- 该参数用于决定从哪里开始截取字符串,
- 此时,该方法截取从指定的索引开始,一直延伸到字符序列的末尾。
举个例子:
"Helloworld".substring(4) // 返回: "oworld"
"Helloworld".substring(5) // 返回: "world"
"Helloworld".substring(6) // 返回: "orld"
- 第二种方式是接受两个参数:
- 前一个参数表示起始点,后一个参数表示截取结束的位置
- 注意,并不包含结束索引的字符
举个例子:
"HelloWorld".substring(0, 5); // 返回: "Hello"
"HelloWorld".substring(1, 5); // 返回: "ello"
"HelloWorld".substring(7, 9); // 返回: "rl"
三、equals
在java中,很少使用==符号来判断两个字符串是否相等。而是使用equals方法。
举个例子:
str.equals("Helloworld")
// 判断str是否与字符串"Helloworld"相等,结果返回true或false
注意,如果判断两个字符串是否相等时,想要忽略字母大小写,则可以使用equalsIgnoreCase方法。
四、charAt
调用str.charAt(n)用于返回指定索引n处的字符值。并且,数值n位于0~str.lenght()-1之间。
举个例子:
"Helloworld".charAt(0); // H
"Helloworld".charAt(9); // d
五、endsWith
调用str.endsWith(suffix)方法,用于检测字符串str是否以指定字符串suffix结尾。检测结果为真true或假false
举个例子:
"Helloworld".endsWith("ld") // true
"Helloworld".endsWith("dl") // false
六、startsWith
调用str.startsWith(prefix)方法,用于检测字符串str是否以指定字符串prefix开头。检测结果为真true或假false
举个例子:
"Helloworld".startsWith("He") // true
"Helloworld".startsWith("eH") // false
七、indexOf
该方法可以接受四种形式的参数,具体如下所示:
indexOf(int ch):
返回与ch匹配的第一个子串的开始位置,如果不存在,则返回 -1(注意,ch表示Unicode代码点)
indexOf(int ch, int fromIndex):
从fromIndex索引开始计算,返回与ch匹配的第一个子串的开始位置。如果不存在,则返回 -1
indexOf(String str):
返回与字符串str匹配的第一个子串的开始位置。如果原字符串中不存在str,则返回 -1
indexOf(String str, int fromIndex):
从fromIndex索引开始计算,返回与字符串str匹配的第一个子串的开始位置。如果原字符串中不存在str,则返回 -1
八、lastIndexOf
该方法可以接受四种形式的参数,具体如下所示:
lastIndexOf(int ch):
返回与ch匹配的最后一个子串的开始位置,如果不存在,则返回 -1(注意,ch表示Unicode代码点)
lastIndexOf(int ch, int fromIndex):
从fromIndex索引开始计算,返回与ch匹配的最后一个子串的开始位置。如果不存在,则返回 -1
lastIndexOf(String str):
返回与字符串str匹配的最后一个子串的开始位置。如果原字符串中不存在str,则返回 -1
lastIndexOf(String str, int fromIndex):
从fromIndex索引开始计算,返回与字符串str匹配的最后一个子串的开始位置。如果原字符串中不存在str,则返回 -1
🏔️拼接
在java中,可以使用加号+拼接两个字符串。
而且,当一个字符串与一个非字符串用加号拼接起来时,非字符串会被转换为字符串。这种特性常用在输出语句中。
int age = 19;
System.out.println("I'm " + age +" years old."); // 返回: "I'm 19 years old."
3️⃣写在最后
好了,今天的笔记就记到这里。