Java字符串String类型简述

本文深入解析Java中String类的功能和使用方法,包括字符串长度、字符获取、子串提取、连接、大小写转换、数字转换、比较及空格处理等操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

String是Java库中预定义的类,属于引用类型,使用它的变量称为引用变量,用于引用对象。

声明

String类型的声明和初始化与基本类型相同,如下

String message = "Hello World";

求字符串长度

调用字符串的length()方法获得长度,如

int len = message.length();

也可对字符串常量直接使用length()方法,如

int len = "Hello World!".length();

从字符串中获取字符

charAt(index)方法可以获得字符串中的特定字符,index表示下标,如

char c = message.charAt(0);

下标的取值要求大于等于0,且小于等于message.length()-1,上面代码获取的是字符串的第1个字符H。

从字符串中查找字符

使用indexOf()lastIndexOf()方法可从字符串中查找字符。

方法作用
indexOf(ch)返回字符串中第一个ch的下标。如果不存在,则返回-1
lastIndexOf(ch)返回字符串中最后一个ch的下标。如果不存在,则返回-1
indexOf(ch, fromIndex)返回从fromIndex之后出现的第一个ch的下标。如果不存在,则返回-1
lastIndexOf(ch, fromIndex)返回从fromIndex之前出现的最后一个ch的下标。如果不存在,则返回-1

从字符串中获得子串

使用substring()方法提取子串。

方法作用
substring(beginIndex)返回从beginIndex开始到结尾的子串
substring(beginIndex, endIndex)返回从beginIndex开始,到endIndex-1的子串

从字符串中查找子串

同样使用index()lastIndexOf()方法从字符串中查找子串。

方法作用
indexOf(s)返回字符串中出现的第一个字符串s的下标,如果不存在,则返回-1
lastIndexOf(s)返回字符串中出现的最后一个字符串s的下标,如果不存在,则返回-1
indexOf(s, fromIndex)返回字符串fromIndex之后出现的第一个字符串s的下标。如果不存在,则返回-1
lastIndexOf(s,fromIndex)返回字符串fromIndex之前出现的最后一个字符串s的下标。如果不存在,则返回-1

连接字符串

可使用concat()方法连接2个字符串,如

String s1 = "Hello ";
String s2 = "World!";
String s3 = s1.concat(s2);

也可使用+连接2个或多个字符串,如

String message = "Hello" + " " + "World";

如果加号+连接的一边是字符串,另一边不是字符串,则把非字符串转化成字符串,然后进行连接。

同理,+=也可连接字符串。

字符串的大小写转换

方法作用
toLowerCase()字符串中的字符都转换为小写
toUpperCase()字符串中的字符都转换为大写
message.toLowerCase();  // 返回 "hello world" 
message.toUpperCase();  // 返回 ”HELLO WORLD"

字符串与数字转换

  • 字符串转为数字

将字符串转化为int值,使用Integer.parseInt()方法,如

int value = Integer.parseInt(str);

如果是要转化为double值,使用Double.parseDouble()方法。

  • 数字转为字符串

在上文字符串连接中讲过加号+连接字符串的作用,因此可通过数字+空字符串的形式,将数字转化为字符串,如

String s = 3 + ""

字符串的比较

  • 判断两个字符串是否相等
方法作用
equals()比较两个字符串是否相等,相等返回true
equalsIgnoreCase()不区分大小写地比较两个字符串是否相等,相等返回true

判断2个字符串是否相等不能使用==,该符号表示判断这2个字符串是否指向同一个对象。

  • 大小比较
方法作用
compareTo()比较两个字符串大小,返回大于0、等于0、小于0的数,分别表示大于、等于、小于
compareToIgnoreCase()不分大小写地比较两个字符串大小,返回大于0、等于0、小于0的数,分别表示大于、等于、小于
  • 比较前缀和后缀
方法作用
startsWith(prefix)字符串以prefix为前缀,则返回true
endsWith(suffix)字符串以suffix为后缀,则返回true
  • 判断是否包含

contain(s)方法用于判断字符串是否包含s,也即判断s是不是字符串的子串。

删除字符串前后空格

trim()方法删除字符串前面和后面多余的空格,如

"  Hello World  ".trim();

删除了H前和d后的空格,返回”Hello World“。

该方法不会删除字符串中间的空格。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值