9.3获取字符串信息

字符串作为对象,可通过相应方法获取字符串的有效信息,如获取某字符串的长度、某个索引位置的字符等。本节将讲解几种获取字符串的相关信息的方法。

9.3.1获取字符串长度

使用String类的length()方法可获取声明的字符串对象的长度。语法如下:

str.length();

其中,str为字符串对象。

获取字符串长度,代码如下:

String str = "We are students";

int size = str.length();

上段代码是将字符串str的长度赋值给int型变量size,此时变量size的值为15,这表示length()方法返回的字符串的长度(包括字符串中的空格)。

9.3.2字符串查找

String类提供了两种查找字符串的方法,即indexOf()与lastIndexOf()方法。这两种方法都允许在字符串中搜索指定条件的字符或字符串。indexOf()方法返回的是搜索的字符或字符串首次出现的位置,lastIndexOf()方法返回的是搜索的字符或字符串最后一次出现的位置。

1.indexOf(String s)

该方法用于返回参数字符串s在指定字符串中首次出现的索引位置。当调用String类的indexOf()方法时,会从当前字符串的开始位置搜索s的位置。如果没有检索到字符串s,该方法的返回值是-1。语法如下:

str.indexOf(substr)

☑ str:任意字符串对象。

☑ substr:要搜索的字符串。

查找字符a在字符串str中的索引位置,代码如下:

String str = "We are students";

int size =str.indexOf("a"); //变量size的值是3

理解字符串的索引位置,要对字符串的下标有所了解。在Java语言中,String对象是用数组表示的。字符串的下标是0~length()-1。

2.lastIndexOf(String str)

该方法用于返回指定字符串最后一次出现的索引位置。当调用String类的lastIndexOf()方法时,会从当前字符串的开始位置检索参数字符串str,并将最后一次出现str的索引位置返回。如果没有检索到字符串str,该方法返回1。语法如下:

str.lastIndexOf(substr)

☑ str:任意字符串对象。

☑ substr:要搜索的字符串。

说明:

如果lastIndexOf()方法中的参数是空字符串""(注意没有空格),则返回的结果与调用length()方法的返回结果相同。

【例1】用两种方式判断字符串的长度

在项目中创建Text类,在主方法中创建String对象,先使用lastIndexOf()方法查看字符串str中空字符串的位置,再输出这个字符串的长度,查看这两个结果是否相同。实例代码如下:

java 复制代码
public class Text {    //创建类
    public static void main(String args[]){    //主方法
        String str = "We are students";    //定义字符串str
        int size = str.lastIndexOf("");    //将空字符串在str中的索引位置赋值给变量size    
        System.out.println("空字符串在字符串str中的索引位置是:"+size);    //将变量size输出    
        System.out.println("字符串str的长度是:"+str.length());    //将字符串str的长度输出
    }
}

运行结果如下:

空字符串在字符串str中的索引位置是:14

字符串str的长度是:15

9.3.3获取指定索引位置的字符

使用charAt()方法可将指定索引处的字符返回。语法如下:

str.charAt(int index)

☑ str:任意字符串。

☑ index:整型值,用于指定要返回字符的下标。

【例2】查看指定索引位置上的字符

在项目中创建Ref类,在主方法中创建String对象,使用charAt()方法查看字符串str中索引位置是6的字符。实例代码如下:

java 复制代码
public class Ref{    //创建类
    public static void main(String args[]){    //主方法
        String str = "hello world";    //定义字符串str
        char mychar = str.charAt(6);    //将字符串str中索引位置是6的字符返回    
        System.out.println("字符串str中索引位置是6的字符为:"+mychar);    //输出信息
    }
}

运行结果如下:

字符串str中索引位置是6的字符为:w

相关推荐
1024奇点4 小时前
【仓颉语言入门 · 第二篇 第 22 课】
开发语言·ide·开源
Csvn5 小时前
WASM
前端
Warren2Lynch5 小时前
C4 模型详解:利用 Visual Paradigm 可视化软件架构的综合指南
开发语言·uml
天河归来5 小时前
第三方接口不稳定,如何让核心任务继续完成
java·大数据
Knight_AL6 小时前
Java 文件下载时文件名中的 `#` 被转换成 `%23`?一次 URL 编码与解码问题排查
java·开发语言
修己xj6 小时前
我用 AI 给自己写了一个 Markdown 编辑器,然后把它开源了
前端
ZhengEnCi6 小时前
GPT-6 Astra 爆改 Qwen 权重真有那么神吗:权重空间编程 0.016% 参数的真相
算法·架构
FRing036 小时前
vue2干货总结2(v-bind、v-for、v-model、指令修饰符、v-bind操作class和style)
开发语言·前端·vue.js·vue2
罗西的思考7 小时前
【轻量化复刻大模型 / KIMI K3】KDA(Kimi Delta Attention):并行
人工智能·算法·机器学习
幸运小猿7 小时前
模拟慢上传-处理超时重试image 丢失线上问题
前端·javascript·html