java查找字符的方法_Java字符串查找(3种方法)

java查找字符的方法_Java字符串查找(3种方法)在给定的字符串中查找字符或字符串是比较常见的操作。字符串查找分为两种形式:一种是在字符串中获取匹配字符(串)的索引值,另一种是在字符串中获取指定索引位置的字符。根据字符查找String类的indexOf()方法和lastlndexOf()方法用于在字符串中获取匹配字符(串)的索引值。1.indexOf()方法indexOf()方法用于返回字符(串)在指定字符串中首次出现的索引位置,…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

在给定的字符串中查找字符或字符串是比较常见的操作。字符串查找分为两种形式:一种是在字符串中获取匹配字符(串)的索引值,另一种是在字符串中获取指定索引位置的字符。

根据字符查找

String 类的 indexOf() 方法和 lastlndexOf() 方法用于在字符串中获取匹配字符(串)的索引值。

1. indexOf() 方法

indexOf() 方法用于返回字符(串)在指定字符串中首次出现的索引位置,如果能找到,则返回索引值,否则返回 -1。该方法主要有两种重载形式:

str.indexOf(value)

str.indexOf(value,int fromIndex)

其中,str 表示指定字符串;value 表示待查找的字符(串);fromIndex 表示查找时的起始索引,如果不指定 fromIndex,则默认从指定字符串中的开始位置(即 fromIndex 默认为 0)开始查找。

例如,下列代码在字符串“Hello Java”中查找字母 v 的索引位置。

String s = “Hello Java”;

int size = s.indexOf(‘v’); // size的结果为8

上述代码执行后 size 的结果为 8,它的查找过程如图 1 所示。

f252565abfca4cab2f16cdbb024a9be5.png

图1 indexOf() 方法查找字符过程

例 1

编写一个简单的 Java 程序,演示 indexOf() 方法查找字符串的用法,并输出结果。代码如下:

public static void main(String[] args) {

String words = “today,monday,sunday”;

System.out.println(“原始字符串是'”+words+”‘”);

System.out.println(“indexOf(\”day\”)结果:”+words.indexOf(“day”));

System.out.println(“indexOf(\”day\”,5)结果:”+words.indexOf(“day”,5));

System.out.println(“indexOf(\”o\”)结果:”+words.indexOf(“o”));

System.out.println(“indexOf(\”o\”,6)结果:”+words.indexOf(“o”,6));

}

运行后的输出结果如下:

原始字符串是’today,monday,sunday’

indexOf(“day”)结果:2

indexOf(“day”,5)结果:9

indexOf(“o”)结果:1

indexOf(“o”,6)结果:7

2. lastlndexOf() 方法

lastIndexOf() 方法用于返回字符(串)在指定字符串中最后一次出现的索引位置,如果能找到则返回索引值,否则返回 -1。该方法也有两种重载形式:

str.lastIndexOf(value)

str.lastlndexOf(value, int fromIndex)

注意:lastIndexOf() 方法的查找策略是从右往左查找,如果不指定起始索引,则默认从字符串的末尾开始查找。

例 2

编写一个简单的 Java 程序,演示 lastIndexOf() 方法查找字符串的用法,并输出结果。代码如下:

public static void main(String[] args) {

String words=”today,monday,Sunday”;

System.out.println(“原始字符串是'”+words+”‘”);

System.out.println(“lastIndexOf(\”day\”)结果:”+words.lastIndexOf(“day”));

System.out.println(“lastIndexOf(\”day\”,5)结果:”+words.lastIndexOf(“day”,5));

System.out.println(“lastIndexOf(\”o\”)结果:”+words.lastIndexOf(“o”));

System.out.println(“lastlndexOf(\”o\”,6)结果:”+words.lastIndexOf(“o”,6));

}

运行后的输出结果如下:

原始字符串是’today,monday,Sunday’

lastIndexOf(“day”)结果:16

lastIndexOf(“day”,5)结果:2

lastIndexOf(“o”)结果:7

lastlndexOf(“o”,6)结果:1

根据索引查找

String 类的 charAt() 方法可以在字符串内根据指定的索引查找字符,该方法的语法形式如下:

字符串名.charAt(索引值)

提示:字符串本质上是字符数组,因此它也有索引,索引从零开始。

charAt() 方法的使用示例如下:

String words = “today,monday,sunday”;

System.out.println(words.charAt(0)); // 结果:t

System.out.println(words.charAt(1)); // 结果:o

System.out.println(words.charAt(8)); // 结果:n

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/234255.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 为什么要Time_wait

    为什么要Time_waitTime_wait啊,老哥们肯定会想,time_wait什么鬼?为毛我主动断开tcp连接。发完最后一个ACK后不能直接断开连接啊,我能做的都做了。但是…..老铁们你们想一下,ACK丢包是不会重传的,但是FIN呢?最后被动关闭的一直要是收不到ACK它会怎么想,它肯定认为FIN包丢包了,那怎么样,重发呗。重发之后呢,如果对端一直不会回复ACK,那么重传一定次数后就会发送重置报文段然后断开连接

    2022年5月29日
    34
  • validate bootstrap 方法「建议收藏」

    validate bootstrap 方法「建议收藏」文章来自:源码在线https://www.shengli.me/jquery/167.html引入文件:jquery-2.1.0.min.jsbootstrap.min.jsbootstrapValidate.js 

    2022年8月30日
    2
  • 02.pycharm中配置PyInstaller打包工具

    02.pycharm中配置PyInstaller打包工具我用的环境版本python解释器:3.6.6pycharm开发工具:2018.3.6社区版PyInstaller打包工具:4.5.1pycharm中配置PyInstaller打包工具opts可选的参数参数含义-F-onefile,打包成一个exe文件-D-onefile,创建一个目录,包含exe文件,但会依赖很多文件(默认选项)-c-console,-nowindowed,使用控制台,无窗口(默认)-w-Windowed,-noconsole,使用窗

    2025年7月7日
    4
  • python源代码下载_python源码解析

    python源代码下载_python源码解析python源码下载 (2010-12-1823:11)不知道python.org一直被堵在墙外… 1、http://ftp.python.org/ftp/python/ 2、http://www.python.org/ftp/python/

    2022年8月23日
    5
  • Python求逆矩阵_3x3下三角矩阵求逆矩阵

    Python求逆矩阵_3x3下三角矩阵求逆矩阵1:导入包numpy  fromnumpyimport*2:定义初始化矩阵  a1=mat([[3,4],[2,16]])  //这是一个2×2的矩阵3:求a1的逆矩阵  a2=a1.I  

    2022年8月21日
    5
  • 万能乘法速算法大全_哪位老师整理的数学公式大全以及小学速算技巧,这么全?赶紧为孩子存下!…

    万能乘法速算法大全_哪位老师整理的数学公式大全以及小学速算技巧,这么全?赶紧为孩子存下!…于茫茫书海中,为你寻找更适合自己成长的有效资源和那些锲入心灵的文字。与高人交心,轻松学习,把时间留给更重要的人更重要的事。精彩就点击右上角分享出去,赠人玫瑰手染余香。上册预习专区小学1-6语文课内:第1课第2课第3课第4课第5课第6课第7课第8课第9课单元1练习:第1课第2课第3课第4课第5课作业1第6课第7课第8课作业2第9课生字:1-3年级生字…

    2022年6月7日
    33

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号