当前位置:首页 » 编程语言 » java子串

java子串

发布时间: 2023-07-04 22:07:41

java中如何判断一个字符串是否为另一个字符串的子串

indexOf(String s)的使用,如果包含,返回的值是包含该子字符串在父类字符串中起始位置;如果不包含必定全部返回值为-1。

代码如下:

package my_automation;

public class z_test {

public static void main(String[] args) {

String test = "This is test for string";

System.out.println(test.indexOf("This")); //0

System.out.println(test.indexOf("is")); //2

System.out.println(test.indexOf("test")); //8

System.out.println(test.indexOf("for")); //13

System.out.println(test.indexOf("for string "));//-1

if (test.indexOf("This")!=-1){

//"只要test.indexOf('This')返回的值不是-1说明test字符串中包含字符串'This',相反如果包含返回的值必定是-1"

System.out.println("存在包含关系,因为返回的值不等于-1");

}else{

System.out.println("不存在包含关系,因为返回的值等于-1");

}

if (test.indexOf("this")!=-1){

//"只要test.indexOf('this')返回的值不是-1说明test字符串中包含字符串'this',相反如果包含返回的值必定是-1"

System.out.println("存在包含关系,因为返回的值不等于-1");

}else{

System.out.println("不存在包含关系,因为返回的值等于-1");

}

}

(1)java子串扩展阅读

java string中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) :从指定的索引处开始向后搜索,返回在此字符串中最后一次出现的指定子字符串的索引。

public class Test {

public static void main(String[] args) {

String s = "xXccxxxXX";

// 从头开始查找是否存在指定的字符 //结果如下

System.out.println(s.indexOf("c")); //2

// 从第四个字符位置开始往后继续查找,包含当前位置

System.out.println(s.indexOf("c", 3)); //3

//若指定字符串中没有该字符则系统返回-1

System.out.println(s.indexOf("y")); //-1

System.out.println(s.lastIndexOf("x")); //6

System.out.println(s.indexOf(120,2)); //4

System.out.println(s.indexOf('x',2)); //4 120是x的ASCII编码

}

}

Ⅱ java 如何查找子串

#########################################
indexOf
public int indexOf(String str)返回第一次出现的指定子字符串在此字符串中的索引。返回的整数是
this.startsWith(str, k)
为 true 的最小值 k。

参数:
str - 任意字符串。
返回:
如果字符串参数作为一个子字符串在此对象中出现,则返回第一个这样的子字符串的第一个字符的索引;如果它不作为一个子字符串出现,则返回 -1。
######################################################
substring
public String substring(int beginIndex)返回一个新的字符串,它是此字符串的一个子字符串。该子字符串始于指定索引处的字符,一直到此字符串末尾。
例如:

"unhappy".substring(2) returns "happy"
"Harbison".substring(3) returns "bison"
"emptiness".substring(9) returns "" (an empty string)

参数:
beginIndex - 开始处的索引(包括)。
返回:
指定的子字符串。
抛出:
IndexOutOfBoundsException - 如果 beginIndex 为负或大于此 String 对象的长度。
#####################################################
不知道你具体的意思,应该用这2个方法,可以知道字串的位置,或取子字符串。
你可以参考JAVA API ,另外JAVA中不叫函数,叫方法。:)

Ⅲ java 实现 一个字符串中不重复最长子串

/**注意:如果一个函数有多个长度相等的不重复子串,本函数只能得到其中的第一个子串,
*如果要输出所有子串,稍作修改即可
*/
publicstaticStringnoDuplicate(Strings){
/**
*这个函数返回给定字符串中最长不重复子串采用类似纸牌游戏拖板车的思维
*/
Stringresult="";//记录最终结果,即最长子串
Stringsub="";//记录当前纸牌串
for(inti=1;i<s.length();i++){//一张张发牌
Stringc=""+s.charAt(i);//当前新发下来的牌
if(!sub.contains(c)){//如果当前纸牌串中不包含新发的牌
sub+=c;//将新牌加入当前纸牌串
}else{//如果当前纸牌串中包含新发的牌
if(result.length()<sub.length()){//如果当前子串比最优记录长
result=sub;//更新最优记录
}
String[]temp=sub.split(c);//将子串按当前牌分割为两部分
sub=temp[1];//取后一部分作新的当前纸牌串,丢弃重复牌及其前面部分
sub+=c;//将新牌加入当前纸牌串
}
}
//比较最后一个当前纸牌串与最优记录
if(result.length()<sub.length()){//如果当前子串比最优记录长
result=sub;//更新最优记录
}
returnresult;
}

热点内容
敢死连狙击手之无名高地ftp 发布:2025-02-09 11:27:21 浏览:583
lol天使辅助脚本 发布:2025-02-09 11:24:39 浏览:139
溯源码怎么生成 发布:2025-02-09 11:15:15 浏览:442
android70flash 发布:2025-02-09 11:15:06 浏览:725
如何查看服务器拒绝信息 发布:2025-02-09 11:13:07 浏览:946
静态编译失败怎么回事 发布:2025-02-09 11:12:54 浏览:215
sql能力 发布:2025-02-09 10:43:50 浏览:983
编译framework 发布:2025-02-09 10:42:11 浏览:382
五子棋对战算法 发布:2025-02-09 10:12:19 浏览:713
php树菜单 发布:2025-02-09 10:04:10 浏览:360