Java 中的字符串操作

2025年9月2日 | 阅读 7 分钟

Java 中,字符串 是一个广泛使用的类,表示一个字符序列。Java 中的字符串是不可变的,这意味着一旦创建了一个 String 对象,它的值就不能被更改。

要阅读更多关于 Java 字符串 的内容

任何修改都会导致创建一个新的 String 对象。Java 在 String 类中提供了大量的内置方法,允许开发人员执行各种操作,如比较、搜索、提取子字符串、大小写转换等。

字符串操作在大多数 Java 应用程序中都至关重要——无论是处理用户输入、格式化消息还是处理文件路径。由于 Java 将字符串视为对象,所有操作都基于方法,而不是像某些其他语言那样基于运算符。

下表描述了常见的字符串操作

操作描述使用方法
长度它确定给定字符串的长度。length()
拼接它将两个或多个字符串拼接(组合)起来。concat()
比较它比较两个字符串是否相等。equals()
子字符串它从一个字符串中提取子字符串。substring()
搜索它在给定的字符串中搜索指定的字符。chatAt()
替换它在给定的字符串中替换指定的字符或子字符串。replace()
分割它将指定的字符串分割成两个或多个子字符串。split()
大小写转换它将字符串转换为大写或小写。toLowerCase() 或 toUpperCase()
查找序列它检查字符串是否包含某个序列。contains()
修剪空格它移除给定字符串中的空格。trim()

字符串长度操作

长度操作用于查找字符串的长度或大小。String 类提供了 length() 方法来查找字符串的长度。

要阅读更多关于 String.length() 方法 的内容

示例

编译并运行

输出

11

字符串拼接操作

字符串拼接是指将两个字符串相加。我们可以使用字符串拼接运算符,即 +,来将两个字符串相加。

要阅读更多关于 String.concat() 方法 的内容

示例

编译并运行

输出

this is init added now

字符串比较操作

compareTo() 方法用于比较字符串。它逐个字符地比较给定的两个字符串。比较基于每个字符的 Unicode 值。如果第一个字符串的所有字符都与第二个字符串匹配,则该方法返回 0。

一旦找到不匹配,如果第二个字符串的字符具有比第一个字符串更大的 Unicode 值,该方法将返回一个负整数。如果第一个字符串的字符的 Unicode 值比第二个字符串的字符更大,则返回一个正值。

该方法返回第一个不匹配字符的 Unicode 值之差。

要阅读更多关于 String.compareTo() 方法 的内容

示例

编译并运行

输出

Tpoint is not equal to Tech
Tpoint is greater than Tech
Tpoint is equal to Tpoint

查找子字符串

子字符串是给定字符串的一部分。String 类提供了 substring() 方法来从给定字符串中查找子字符串。

要阅读更多关于 String.substring() 方法 的内容

示例

编译并运行

输出

oi
ointTech

搜索操作

charAt() 方法用于访问字符串中的单个字符。Java 的 charAt() 方法返回给定索引处的字符值。

要阅读更多关于 String.charAt() 方法 的内容

示例

编译并运行

输出

t

替换操作

在此操作中,指定的字符或子字符串被替换为另一个指定的字符或子字符串。要执行替换操作,String 类提供了 replace() 方法。

要阅读更多关于 String.replace() 方法 的内容

示例

编译并运行

输出

bonono
Java is awesome

分割操作

split 操作使用指定的定界符分割给定的字符串。String 类提供了 split() 方法来执行 split 操作。

要阅读更多关于 String.split() 操作 的内容

示例

编译并运行

输出

java
string
split
method
by
TpointTech

大小写转换操作

在此操作中,如果字符串中的字符是小写,则它们将被转换为大写,反之亦然。String 类提供了两个不同的方法来执行大小写转换。

  • toLowerCase()
  • toUpperCase()

要阅读更多关于 String.toLowerCase() 方法String.toUpperCase() 方法 的内容

示例

编译并运行

输出

tpointtech
TPOINTTECH

查找序列

String.contains() 方法搜索给定字符串中的字符序列。如果找到了字符值序列,则返回 true,否则返回 false。

要阅读更多关于 String.contains() 方法 的内容

示例

编译并运行

输出

true
true
false

修剪操作

Java String.trim() 方法会删除字符串开头和结尾的空格。空格字符的 Unicode 值是 '\u0020'。Java 字符串中的 trim() 方法在字符串的开头和结尾检查此 Unicode 值,如果存在,则该方法删除空格并返回去除空格后的字符串。

  • 前导空格:指出现在字符串开头的空格或空白字符。
  • 尾随空格:指出现在字符串结尾的空格或空白字符。

trim() 方法专门处理 Unicode 值小于或等于 '\u0020'(Unicode 中的空格字符)的字符。它不会影响字符串内部的空格或任何字符,除了两端的字符。

注意:string trim() 方法不会删除中间的空格。

要阅读更多关于 String.trim() 方法 的内容

示例

编译并运行

输出

  hello string   TpointTech
hello stringTpointTech

在字符串中插入字符

可以使用以下方法将任何字符或字符串插入到字符串中:

  • 要添加到字符串中的字符串或字符(例如,“ch”)。
  • 要插入字符或字符串的索引或位置。(例如,“k”)

示例

编译并运行

输出

Original String: Tpoint Tech
Modified String: Tpoifornt Tech

字符串操作选择题

Q1. 要查找字符串 str 的长度,我们使用 ___________。

  1. str.length()
  2. str.Length()
  3. str.length
  4. str.Length
 

答案: a)

解释:我们使用 str.length() 来查找字符串 str 的长度。


Q2. 找出以下代码片段的输出。

  1. 0
  2. 32
  3. -32
  4. 20
 

答案: b)

解释:字符 'a' 的 Unicode 值是 97,字符 'A' 的 Unicode 值是 65。所以,差值是 97 - 65 = 32。


Q3. compareTo() 方法返回 0。这意味着什么?

  1. 两个字符串的大小相同,但字符不同。
  2. 两个字符串的大小不同。
  3. 忽略大小写的情况下,第一个字符串的每个字符都与第二个字符串匹配。
  4. 两个字符串包含相同的字符并且具有相同的 Unicode 值。
 

答案: d)

解释:compareTo() 方法根据 Unicode 值逐个字符地进行比较。如果 Unicode 值匹配,则返回 0。


Q4. 要访问特定索引处的字符,我们使用 ___________。

  1. charAt()
  2. char.at()
  3. CharAt()
 

答案: a)

解释:charAt() 方法用于访问特定索引处的字符。


Q5. 修改字符串包括 _____________。

  1. 从字符串中删除字符。
  2. 从字符串中替换字符。
  3. 向字符串中添加字符。
  4. 以上全部
 

答案: d)

解释:如果我们通过添加、删除或替换字符来更改字符串,我们可以说字符串被修改了。