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

相关推荐
abcnull1 小时前
用javaparser做精准测试
java·ast·静态代码分析·精准测试·javaparser
叶小鸡1 小时前
Java 篇-项目实战-苍穹外卖-笔记汇总
java·开发语言·笔记
@PHARAOH1 小时前
WHAT - GitLens vs Fork
前端
yqcoder2 小时前
前端性能优化:如何减少重绘与重排?
前端·性能优化
AI人工智能+电脑小能手2 小时前
【大白话说Java面试题】【Java基础篇】第22题:HashMap 和 HashSet 有哪些区别
java·开发语言·哈希算法·散列表·hash
昵称小白2 小时前
复杂度分析方法
算法
juniperhan2 小时前
Flink 系列第21篇:Flink SQL 函数与 UDF 全解读:类型推导、开发要点与 Module 扩展
java·大数据·数据仓库·分布式·sql·flink
科研前沿2 小时前
2026 数字孪生前沿科技:全景迭代报告 —— 镜像视界生成式孪生(Generative DT)技术白皮书
大数据·人工智能·科技·算法·音视频·空间计算
ID_180079054732 小时前
Python 实现亚马逊商品详情 API 数据准确性校验(极简可用 + JSON 参考)
java·python·json
c++之路2 小时前
C++23概述
java·c++·c++23