Java中indexOf() 方法 总计及其日常使用

这篇具有很好参考价值的文章主要介绍了Java中indexOf() 方法 总计及其日常使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Java中indexOf() 方法 总计及其日常使用

Java中indexOf() 方法 总计及其日常使用

博主 默语带您 Go to New World.
个人主页—— 默语 的博客👦🏻
《java 面试题大全》
🍩惟余辈才疏学浅,临摹之作或有不妥之处,还请读者海涵指正。☕🍭
《MYSQL从入门到精通》数据库是开发者必会基础之一~
🪁 吾期望此文有资助于尔,即使粗浅难及深广,亦备添少许微薄之助。苟未尽善尽美,敬请批评指正,以资改进。!💻⌨

摘要: indexOf() 方法用于在字符串中查找指定子串,并返回第一个匹配项的索引。Java 提供了四种常用的查找方法,分别是 indexOf(String str)indexOf(String str, int startIndex)lastIndexOf(String str)lastIndexOf(String str, int startIndex)

Demo 理解: 上面的示例代码展示了在字符串中使用 indexOf() 方法进行查找的示例。通过设置不同的起始位置,可以灵活地定位子串。

Java 中的 indexOf() 方法: 👀

indexOf() 方法用于在字符串中查找指定子串,并返回第一个匹配项的索引。它从指定的字符位置开始搜索,检查指定数量的字符位置。

在 Java 中,共有四种常用的查找方法:

  1. int indexOf(String str): 返回第一次出现的指定子字符串在此字符串中的索引。
  2. int indexOf(String str, int startIndex): 从指定的索引处开始,返回第一次出现的指定子字符串在此字符串中的索引。
  3. int lastIndexOf(String str): 返回在此字符串中最右边出现的指定子字符串的索引。
  4. int lastIndexOf(String str, int startIndex):此方法接收两个参数,第一个参数是要查找的子字符串 str,第二个参数是开始搜索的索引位置 startIndex。它会从指定的索引位置向后搜索,并返回最后一次出现指定子字符串的索引位置。如果在指定的索引位置之后没有找到子字符串,则返回 -1。如果子字符串为空字符串或者搜索索引超出了字符串的长度,则返回字符串的长度。

以下是一个示例代码:

String str = "Hello, World!";
int index = str.lastIndexOf("o", 7);
System.out.println(index); // 输出4

在以上示例代码中,我们首先创建了一个字符串 str,然后调用了 lastIndexOf 方法来查找最后一次出现字符 o 的位置,在字符串 str 中从索引 0 到索引 7 的范围内进行查找,即 "Hello, ",结果为 4。

indexOf 使用示例:

package com.example.democrud.democurd.controller;

public class IndexOfExample {

    public static void main(String[] args) {

        String s = "yanwenchaoyan";

        // 从头开始查找是否存在指定的字符
        // 不存在则返回 -1, 存在则返回对应的下标位置
        int le = s.indexOf("l");
        int les = s.indexOf("n");
        System.out.println("yanwenchao 的不存在则为:" + le);
        System.out.println("yanwenchao 的存在的下标为:" + les);

        System.out.println("---------------------------------------");

        // 从第四个字符位置开始往后继续查找,包含当前位置,前面的就过滤掉
        int i = s.indexOf("y", 3);
        System.out.println("yanwenchao 的下标位置是:" + i);

        System.out.println("---------------------------------------");

        String s1 = "01234560123456";
        int ls = s1.indexOf("123");
        int lss = s1.lastIndexOf("123");
        //反方向
        int lsss = s1.lastIndexOf("123", 4);

        System.out.println("下标地址:" + ls);
        System.out.println("下标地址:" + lss);
        System.out.println("下标地址:" + lsss);

        System.out.println("---------------------------------------");

    }
}

运行结果:

yanwenchao 的不存在则为:-1
yanwenchao 的存在的下标为:2
---------------------------------------
yanwenchao 的下标位置是:10
---------------------------------------
下标地址:1
下标地址:8
下标地址:1
---------------------------------------

注意:指定了索引位置之后,将从指定索引位置开始进行查询,返回相应的下标值。例如,如果搜索字符 “y”,则返回字符 “y” 第一次出现的位置。

获取动态数组元素的索引:

如果我们想获得最后一次出现 “Runoob” 的位置,我们可以使用 lastIndexOf() 方法。

public static void main(String[] args){

    // 创建一个数组
    ArrayList<String> sites = new ArrayList<>();

    sites.add("Google");
    sites.add("Runoob");
    sites.add("Taobao");
    System.out.println("网站列表: " + sites);

    // 查找位置索引值为 "Runoob" 的元素
    // 如果存在,则返回对应的下标位置(下标从 0 开始)
    // 例如:Google 对应下标 0, Runoob 对应下标 1, Taobao 对应下标 2
    // 所以返回 1
    int position1 = sites.indexOf("Runoob");
    System.out.println("Runoob 的索引位置: " + position1);

    // 查找位置索引值为 "Weibo" 的元素
    // 不存在,则返回 -1
    int position2 = sites.indexOf("Weibo");
    System.out.println("Weibo 的索引位置: " + position2);
}

运行结果:

网站列表: [Google, Runoob, Taobao]
Runoob 的索引位置: 1
Weibo 的索引位置: -1

lastIndexOf 方法

lastIndexOf() 方法返回指定元素在动态数组中最后一次出现的位置。

public static void main(String[] args){

    // 创建一个数组
    ArrayList<String> sites = new ArrayList<>();
    // "Runoob" 存在两次,下面代码会得到最后一次出现的位置
    sites.add("Google");
    sites.add("Runoob");
    sites.add("Taobao");
    sites.add("Runoob");
    System.out.println("网站列表: " + sites);

    // 获取 "Runoob" 最后一次出现的位置
    int position1 = sites.lastIndexOf("Runoob");
    System.out.println("Runoob 最后出现的位置: " + position1);

    // "Wiki" 不在数组中,返回 -1
    int position2 = sites.lastIndexOf("Wiki");
    System.out.println("Wiki 最后出现的位置: " + position2);
}

总结:

Java中的indexOf()方法是用于在字符串中查找指定子串的常用方法。主要有以下几个用法:

  1. int indexOf(String str):从头开始查找指定子串在字符串中第一次出现的位置,返回相应的索引值。
  2. int indexOf(String str, int startIndex):从指定的索引位置开始往后查找,返回第一次出现的位置。
  3. int lastIndexOf(String str):返回指定子字符串在字符串中最后一次出现的位置。
  4. int lastIndexOf(String str, int startIndex):从指定的索引位置开始反向查找,返回最后一次出现的位置。

在使用这些方法时,需要注意:

  • 如果找到指定子串,返回对应的索引位置(索引从0开始)。
  • 如果未找到指定子串,返回-1。

此外,指定了索引位置后,从该位置开始进行查找。如果子串为空字符串或搜索索引超出了字符串的长度,将返回相应的长度值。

indexOf()方法在字符串操作中非常实用,可以帮助定位特定字符或子串的位置,为进一步的处理提供了便利。

🪁🍁 希望本文能够给您带来一定的帮助🌸文章粗浅,敬请批评指正!🍁🐥

如对本文内容有任何疑问、建议或意见,请联系作者,作者将尽力回复并改进📓;(联系微信:Solitudemind )

点击下方名片,加入IT技术核心学习团队。一起探索科技的未来,共同成长。

Java中indexOf() 方法 总计及其日常使用文章来源地址https://www.toymoban.com/news/detail-424577.html

到了这里,关于Java中indexOf() 方法 总计及其日常使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 《vue3实战》通过indexOf方法实现电影评价系统的模糊查询功能

    目录 前言 一、indexOf是什么?indexOf有什么作用? 含义: 作用: 二、功能实现 这段是查询过程中过滤筛选功能的代码部分: 分析: 这段是查询用户和性别功能的代码部分: 分析: 三、最终效果图 查询输入框所在图: 输入姓名羊和性别男模糊查询后的效果图: 输入姓名羊和

    2024年02月10日
    浏览(40)
  • 日常BUG——Java使用Bigdecimal类型报错

    😜 作           者 :是江迪呀 ✒️ 本文 : 日常BUG 、 BUG 、 问题分析 ☀️ 每日   一言 : 存在错误说明你在进步! 直接上代码: 报错内容: 原来JAVA中如果用 BigDecimal 做除法的时候一定要在divide方法中传递第二个参数,定义精确到小数点后几位,否则在不整除

    2024年02月13日
    浏览(44)
  • 【JAVA日常】关于jeecgBoot @Dict注解的使用不生效问题

    项目中后端使用jeecgBoot开发,最近正好遇到一些关于改造和使用@dict字典注解的问题,正好记录一下,以防忘记。 1、注解不生效问题1 今天公司同事问,说这个注解加上了怎么还不起作用呢。 我们就检查了代码中的使用。注解的添加以及使用都正常,然后排查发现接口调用时

    2024年02月02日
    浏览(34)
  • JavaScript【字符串方法(charAt()、concat()、slice()、substring()、substr()、indexOf()/lastIndexOf()、trim())】(五)

      目录 字符串 字符串转码 字符串方法_charAt()

    2024年02月13日
    浏览(40)
  • 【拆解设计模式】工厂方法及其Java示例

    在我们的编程世界中,设计模式就如同一盏指路明灯,引领我们走向优雅、高效的代码之路。设计模式是一种在特定环境下解决特定问题的优秀方案,它是前人的经验总结,是我们编程的宝贵财富。 1.1 设计模式的定义和分类 设计模式,简单来说,就是一套被反复使用、多数

    2024年01月20日
    浏览(51)
  • 【Java】集合List的toArray()方法及其重载

    在Java中,集合(List 接口的实现类)提供了一个名为 toArray 的方法,用于将集合中的元素转换成数组。该方法有两个主要的重载形式,分别用于不同的情况。 这个方法将集合中的元素复制到一个指定类型的数组中,并返回该数组。 如果指定的数组大小足够容纳集合中的所有

    2024年02月11日
    浏览(30)
  • 日志框架及其使用方法

    特别补充: log对象的创建可以由@sl4j完成,该注解不能替代配置日志文件,导入lombok依赖后即可使用该注解 log4j和logBack,同一个人写的,logBack为log4j的升级版,SpringBoot中默认集成logBack 作用:记录软件发布后的一些bug,以及数据是怎样被操作的 传统开发弊端: 1.日志直接输出在

    2024年02月13日
    浏览(62)
  • Java基础09 —— 字符序列--String、StringBuilder、StringBuffer区别及其方法介绍

    字符与字符串 字符类型(char)是Java中的基本数据类型,占2个字节16位,默认值是 ‘u0000’ 。字符是用单引号引住的单个符号. 字符串(String)是用双引号引住的任意个字符,是引用数据类型,默认值是null 。字符串其实就是字符组成的序列 字符串声明 举例: 字符序列 多个字符

    2024年02月09日
    浏览(37)
  • electron+vue项目使用serialport报错Cannot read property ‘indexOf‘ of undefined解决办法

    使用Electron+Vue项目时引入serialport串口后启动时报下面错误 打开 vue.config.js 找到 pluginOptions - electronBuilder - externals添加serialport

    2024年01月19日
    浏览(43)
  • Docker部署nextcloud及其使用方法

    Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。 容器是完全使用沙箱机制,相互之间不会有任何接口(类似

    2024年02月10日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包