Java字符串查找的三种方式

Java字符串查找有多种方式,其中比较常见的有三种:indexOf()、lastIndexOf()和contains(),下面分别进行详细讲解。

使用indexOf()方法查找字符串

indexOf()方法将返回指定字符串在当前字符串中第一次出现的位置。该方法属于String类,它有多个重载版本,可以根据传入的参数来控制查找的起点和查找的方向。例如:

String str = "Hello Java, Hello World!";
int index = str.indexOf("Hello");
System.out.println(index);  // 输出0

上述示例代码中,调用了String类的indexOf()方法,传入了要查找的字符串"Hello",返回的结果是0,即它在原始字符串出现的第一个位置。

如果要从指定的位置开始查找,可以传入第二个参数作为起点。例如:

String str = "Hello Java, Hello World!";
int index = str.indexOf("Hello", 7);
System.out.println(index);  // 输出13

上述示例代码中,从位置7开始向后查找,找到的第一个匹配"Hello"的位置是13。

使用lastIndexOf()方法查找字符串

lastIndexOf()方法和indexOf()方法类似,不同之处在于它从后往前查找。该方法也属于String类,它有多个重载版本,可以控制查找的起点和查找的方向。例如:

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

上述示例代码中,调用了String类的lastIndexOf()方法,传入要查找的字符串"Hello",返回的结果是12,即它在原始字符串中从后往前数的第一个位置。

如果要从指定的位置开始向前查找,可以传入第二个参数作为起点。例如:

String str = "Hello Java, Hello World!";
int index = str.lastIndexOf("Hello", 17);
System.out.println(index);  // 输出0

上述示例代码中,从位置17开始向前查找,找到的最后一个匹配"Hello"的位置是0。

使用contains()方法查找字符串

contains()方法可以用来检查当前字符串是否包含指定的子字符串。该方法也属于String类,它返回的是一个布尔值,表示指定子字符串是否被包含在当前字符串中。例如:

String str = "Hello Java, Hello World!";
boolean contains = str.contains("Java");
System.out.println(contains);  // 输出true

上述示例代码中,调用了String类的contains()方法,传入要查找的字符串"Java",返回的结果是true,因为当前字符串包含该子字符串。

总结

至此,我们已经介绍了Java字符串查找的三种常用方法:indexOf()、lastIndexOf()和contains()。其中,indexOf()和lastIndexOf()是用来查找指定子字符串的,两者查找的方向不同;contains()是用来检查当前字符串是否包含指定子字符串。对于这三种方法,还可以根据需要传入不同的参数来控制查找的方向和起点。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java字符串查找的三种方式 - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • Linux下PHP+MYSQL+APACHE配置过程 (摘)第1/2页

    针对“Linux下PHP+MYSQL+APACHE配置过程”这一话题,我会提供一个完整的攻略,并在过程中举两个实例说明,内容如下: Linux下PHP+MYSQL+APACHE配置过程 安装apache 在Linux系统下,Apache是一款非常流行的Web服务器软件,可以通过以下步骤进行安装: 更新包管理器 sudo apt update 安装apache…

    Java 2023年6月2日
    00
  • Java入门7(异常处理,list集合)

    异常处理(try-catch) 错误的种类 一般来讲,程序出现错误的时候,大致情况有三种: 语法错误 运行时错误,指的是各程序运行的时候,出现的一些没有想到的问题,比如除数为0,比如数组下标越界等等 逻辑错误,运行结果和与其结果不一致,俗称bug ⭐Java中的异常处理机制主要用于处理运行时错误 异常的定义 ​ 运行时发生的错误,叫做异常,处理这些异常的代码…

    Java 2023年5月8日
    00
  • Java Web 实现QQ登录功能一个帐号同一时间只能一个人登录

    首先我们需要了解一下QQ登录的实现流程。 用户打开网站,点击QQ登录按钮。 网站向QQ开放平台发送授权请求,获取用户授权。 QQ开放平台返回用户授权凭证,包含用户唯一标识openid。 网站拿到授权凭证后,向QQ开放平台发送请求,获取用户信息。 网站将用户信息保存在数据库中,同时在用户登录时生成一个token,返回给用户。 用户在访问其他需要登录的页面时,将…

    Java 2023年6月16日
    00
  • Java中不常用但很好用的开发小技巧分享

    下面是 “Java中不常用但很好用的开发小技巧分享” 的完整攻略: 一、使用Lambda表达式简化代码 Lambda表达式是Java 8中引入的新特性,它可以将方法当做参数进行传递,从而简化代码。比如,在Java 8之前,如果我们要对一个集合进行排序,通常需要实现Comparator接口,然后实现compare方法。而在Java 8中,我们可以使用Lambd…

    Java 2023年5月23日
    00
  • EasyUi+Spring Data 实现按条件分页查询的实例代码

    首先让我们来介绍一下 EasyUi 和 Spring Data。 EasyUi 是一款基于 jQuery 的 UI 框架,它提供了丰富的 UI 组件和简单易用的 API,可以帮助开发者快速搭建高质量的 Web 应用程序。Spring Data 是 Spring 框架下用于简化数据访问的一个API框架,它为开发者提供了统一的 API ,可以实现对数据库的访问和…

    Java 2023年5月20日
    00
  • Java高级面试题小结

    让我给大家详细讲解“Java高级面试题小结”的完整攻略。 简介 “Java高级面试题小结”是一篇系统总结Java面试中常出现的高级难点问题以及解决方案的文章。该文主要分为以下几个部分: Java高级面试题分类 Java高级面试题解析及解决方案 Java高级面试题分类 Java高级面试题主要分为以下几个类别: 多线程 并发集合 垃圾回收算法 反射机制 设计模式…

    Java 2023年5月26日
    00
  • Java中的notyfy()和notifyAll()的本质区别

    在Java多线程编程中,我们经常会用到wait()、notify()和notifyAll()方法,它们都属于Object类中用于锁的方法。其中notify()和notifyAll()方法都是用来唤醒等待线程的方法,但它们在本质上是有一定区别的。 一、notify()和notifyAll()方法的作用 notify()和notifyAll()都用于唤醒当前对象…

    Java 2023年5月26日
    00
  • java抛出异常与finally实例解析

    Java 抛出异常与 finally 实例解析 异常简介 在程序运行过程中,有一些无法预知的情况可能会导致程序出现异常。Java 语言提供了异常机制用于处理程序出现的异常情况。当程序发生异常时,系统会自动抛出一个异常对象,程序可以通过捕捉异常对象并进行处理,从而解决异常情况。 在 Java 中,异常分为两种:运行时异常和受检异常。运行时异常一般指在程序运行过…

    Java 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部