用java编写一个程序,在不使用数组的情况下检查给定字符串中是否存在子字符串
为什么不使用用java编写一个程序,在不使用数组的情况下检查给定字符串中是否存在子字符串,java,Java,为什么不使用contains(String)进行比较,而使用trim()删除字符串开头和结尾的空白字符 input:Hello enter subString lo output: not present **expected output** input: enter string :Hello enter subString: lo output: present its giving correct outpu
contains(String)
进行比较,而使用trim()
删除字符串开头和结尾的空白字符
input:Hello
enter subString
lo
output: not present
**expected output**
input:
enter string :Hello
enter subString: lo
output: present
its giving correct output for other input
input:
enter String:hello
enter sub String: ello
output:present
**one more example**
enter String
hello
enter:sub String
l
output:present
编辑
你可以一个字符一个字符地比较
String s,sub;
System.out.println("enter String");
s = sc.next().trim();
System.out.println("enter sub String");
sub = sc.next().trim();
if(s.contains(sub)){
System.out.println("present");
}else{
System.out.println("not present");
}
boolean isSubString=false;
对于(inti=0;i),我们必须在不使用contain()函数的情况下执行此程序,但您的答案很有用sir@ManjotSingh我编辑了我的答案,看一下。下次当你发布问题时,请告诉我们所有条件。
String s,sub;
System.out.println("enter String");
s = sc.next().trim();
System.out.println("enter sub String");
sub = sc.next().trim();
if(s.contains(sub)){
System.out.println("present");
}else{
System.out.println("not present");
}
boolean isSubString = false;
for(int i = 0; i <= s.length() - sub.length(); i++) {
isSubString = true;
for(int j = 0; j < sub.length(); j++) {
if(s.charAt(i+j) != sub.charAt(j)) {
isSubString = false;
break;
}
}
if(isSubString == true) {
break;
}
}
System.out.println(isSubString);