java 查找字符串所在的位置代码

使用了 String 类的 indexOf() 方法在字符串中查找子字符串出现的位置,如过存在返回字符串出现的位置(第一位为0),如果不存在返回 -1。方便判断和截取字符串!

语法:stringObject.indexOf(searchvalue,fromindex)

参数 描述

searchvalue 必需。规定需检索的字符串值。

fromindex 可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是0到 - 1。如省略该参数, 则将从字符串的首字符开始检索。

该方法将从头到尾地检索字符串 stringObject,看它是否含有子串 searchvalue。开始检索的位置在字符串的 fromindex 处或字符串的开头(没有指定 fromindex 时)。如果找到一个 searchvalue,则返回 searchvalue 的第一次出现的位置。stringObject 中的字符位置是从 0 开始的。

注释:indexOf() 方法对大小写敏感!

注释:如果要检索的字符串值没有出现,则该方法返回 -1。

示例:

public class SearchStringEmp {
  public static void main(String[] args) {
   String strOrig = "Hello World!Hello World!";
   int intIndex = strOrig.indexOf("Hello");
   if(intIndex == - 1){
     System.out.println("没有找到字符串 Hello");
   }else{
     System.out.println("Hello 字符串位置:" + intIndex);
   }
  }
}

结果:

Hello 字符串位置: 0

注释:当字符串中多次出现相同的字符串时,此方法返回的值为第一次出现的位置的索引值。

lastIndexOf(Stringname):

我们可以通过lastIndexOf(Stringname) 来查找子字符串 Stringname 在 字符串中最后出现的位置

示例:

public class SearchlastString {
  public static void main(String[] args) {
   String str = "Hello world!Hello World!";
   int lastIndex = str.lastIndexOf("Hello");
   if(lastIndex == - 1){
     System.out.println("没有找到字符串 Hello");
   }else{
     System.out.println("Hello 字符串最后出现的位置: "+ lastIndex);
   }
  }
}

结果:

Hello 字符串最后出现的位置: 12

补充知识:Java编程——indexOf方法,检索字符串的位置

package day01;
/**
 * indexOf
 * 检索字符串的位置
 * @author Administrator
 *
 */
public class StringDemo3 {
 public static void main(String[] args){
 //      0123456789012345
 String str = "thinking in java";
 int index = str.indexOf("java");
 System.out.println("index:"+index);
 /*
  * indexOf(String str,int index)
  * 查找给定字符串在当前字符串的位置
  * 首先第一个参数要在当前字符串中找到
  * 然后返回返回第一个字母所在的下标位置
  */
 index = str.indexOf("in",5);
 System.out.println("index:"+index);
 index = str.indexOf("in",7);
 System.out.println("index:"+index);
 //返回最后一个in出现的位置
 index = str.lastIndexOf("in");
 System.out.println("index:"+index);

 //email  @
 String mail = "123123123.com";
 index = mail.indexOf("@");
 if(index>0&&index<mail.length()-1){
  System.out.println("是邮箱");
 }else{
  System.out.println("不是邮箱");
 }

 }
}

#运行结果为

以上这篇java 查找字符串所在的位置代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 基于Java中字符串内存位置详解

    前言 之前写过一篇关于JVM内存区域划分的文章,但是昨天接到蚂蚁金服的面试,问到JVM相关的内容,解释一下JVM的内存区域划分,这部分答得还不错,但是后来又问了Java里面String存放的位置,之前只记得String是一个不变的量,应该是要存放在常量池里面的,但是后来问到new一个String出来应该是放到哪里的,这个应该是放到堆里面的,后来又问到String的引用是放在什么地方的,当时傻逼的说也是放在堆里面的,现在总结一下:基本类型的变量数据和对象的引用都是放在栈里面的,对象本身放在堆里面,

  • JAVA实现往字符串中某位置加入一个字符串

    我就废话不多说了,大家看代码吧~ String a = "hello"; StringBuffer sb = new StringBuffer(); 1. sb.append(a).insert(2,"aaa"); 结果 sb.toSring()为"heaaallo" 2. sb.append(a).replace(1, 3, "aaa"); //下标从第一开始,到第三个结束 结果 sb.toSring()为"haa

  • 详解Java字符串在内存中的存储位置

    在JDK6的时候在Java虚拟机(这里指的是HotSpot)中内存区域分为本地方法栈.虚拟机栈.堆.程序计数器.方法区等,方法区又被称作永久代. 这里只说一下字符串的存储位置,在Java虚拟机内存中有个区域叫做运行时常量池,是方法区的一部分.在JDK6中其中存放的有类的版本.字段.方法.接口等描述信息以及常量池,常量池用来存放编译期间生成的各种字面量和符号引用,字符串就存储在这个位置.下面通过代码来看下现象. 这是JDK6的实验现象,Java虚拟机的配置如下: -XX:PermSize=5M -

  • java 查找字符串所在的位置代码

    使用了 String 类的 indexOf() 方法在字符串中查找子字符串出现的位置,如过存在返回字符串出现的位置(第一位为0),如果不存在返回 -1.方便判断和截取字符串! 语法:stringObject.indexOf(searchvalue,fromindex) 参数 描述 searchvalue 必需.规定需检索的字符串值. fromindex 可选的整数参数.规定在字符串中开始检索的位置.它的合法取值是0到 - 1.如省略该参数, 则将从字符串的首字符开始检索. 该方法将从头到尾地检索

  • java查找字符串中的包含子字符串的个数实现代码

    1. 用indexof的方法: public class Test11 { private static int counter = 0; /** * @param args */ public static void main(String[] args) { String str ="sdSS**&HGJhadHCASch& ^^"; int i = stringNumbers(str); System.out.println(i); } public static

  • Java判断字符串回文的代码实例

    首先,回文是指类似于"12345","abcdcba"的形式,即正念和反念都是一样的字符串 判断字符串是否是回文,这边介绍2种办法 1.将字符串翻转,判断翻转后的字符串和原字符串是否相等 public static void main(String[] args) { String s="abcdcba"; // 用StringBuilder的reverse方法将字符串反转 StringBuilder sb=new StringBuilder(s

  • Java的字符串中对子字符串的查找方法总结

    Java中字符串中子串的查找共有四种方法,如下: 1.int indexOf(String str) :返回第一次出现的指定子字符串在此字符串中的索引. 2.int indexOf(String str, int startIndex):从指定的索引处开始,返回第一次出现的指定子字符串在此字符串中的索引. 3.int lastIndexOf(String str) :返回在此字符串中最右边出现的指定子字符串的索引. 4.int lastIndexOf(String str, int startI

  • java实现字符串反转案例

    本文实例为大家分享了java实现字符串反转的具体代码,供大家参考,具体内容如下 1.需求: 定义一个方法,实现字符串反转.键盘录入一个字符串,调用该方法后,在控制台输出结果 例如,键盘录入abc,输出结果cba 2.思路: 1.键盘录入一个字符串,用Scanner实现 2.定义一个方法,实现字符反转.返回值类型String,参数String s 3.在方法中把字符串倒着遍历,然后把每一个得到的字符拼接成一个字符串并返回 4.调用方法, 用一个变量接收结果 5.输出结果 3.代码实现 import

  • Java String字符串和Unicode字符相互转换代码详解

    网上大部分有关"Java String字符串和Unicode字符相互转换代码"的博文几乎都仅是将全为Unicode字符的字符串进行转换,而我们日常很可能需要的是将混有普通字符的Unicode一并转换(例如"\u0061\u0062\u0063(123)",我们希望转换成"abc(123)",而实际上网上的通用方法并不符合该需求,运行即报错),普通字符跳过而Unicode字符要进行转换,在进行字符串的查找替换截取什么的使用正则表达式往往是个很好的选

  • Java 常量池详解之字符串常量池实现代码

    目录 1.字符串常量池(String Constant Pool) 1.1:字符串常量池在Java内存区域的哪个位置? 1.2:字符串常量池是什么? 1.3 字符串常量池生成的时机? 如何将String对象放入到常量池 String 对象代码案例解析 new string(“abc”)创建了几个对象 解析public native String intern() 方法 Integer 对象代码案例解析 为啥Integer i1 =10 跟Integer.valueOf(10) 是相等的? 为啥I

  • PowerShell中查找字符串位置的IndexOf函数使用实例

    本文介绍在PowerShell中使用字符串的IndexOf函数,来查询一个字符串中是否存在另一个字符串,如果存在那么它在什么位置. IndexOf函数是String对象的静态方法,用于查找一个字符串在另一个字符串中的位置.如果查寻字符串在被查询字符串中不存在,则返回值为-1.如果存在,则返回查寻字符串所处的位置,位置是从0开始的. 下面看看例子: 在"123"中不存在"13" 复制代码 代码如下: PS C:\Users\spaybow> "123&

  • php通过strpos查找字符串出现位置的方法

    本文实例讲述了php通过strpos查找字符串出现位置的方法.分享给大家供大家参考.具体分析如下: strpos用来查找一个字符串在另一个字符串中首次出现的位置,strpos区分大小写,如果没有找到则返回false,所以strpos有两种类型的返回值,一种是整形,一种是bool型,开发过程中需要注意 <?php echo strpos("Hello world!","wo"); ?> 输出结果:6 由于strpos有两种类型的返回值,所以在判断是否找到子

随机推荐