/*
使用函数寻找字符串在指定字符串第一次出现的位置,
如果有就返回位置值
如果没有就返回-1
*/
public class StringSearch {
public static void main(String[] args) {
String g = "abcdefghijjlmnopqrstuvwxyz";
String l = "rst";
System.out.println(g.substring(,l.length()));
System.out.println(g.indexOf(l)+1);
System.out.println("left to right第一次出现rst的位置\t" + strSearch(g,l));
}
public static int strSearch(String a, String b) {
int x = a.length();
int y = b.length();
int pos = 0;
String s = "";
for(int m=0;m<x-y+1;m++) {
s = a.substring(m,m+y);
if((s.equals(b))==true) {
pos = m+1;
} else {
pos = -1;
}
/*
这里如果没有else语句,可以出现正常结果,一旦加上,始终返回是-1
*/
}
return pos;
}
}
for(int m=0;m <x-y+1;m++) {
s = a.substring(m,m+y);
if((s.equals(b))==true) {
pos = m+1;
break;//加这一句
} else {
pos = -1;
}
/*
这里如果没有else语句,可以出现正常结果,一旦加上,始终返回是-1
*/
}
问题没?请高手指教一下,小问题难倒英雄汗呀。。
继续请教
LZ参加笔试后头脑晕了
好好休息下再想就好了
帮助了一下,呵呵。使用break可以立即退出循环的,这个明白了。
笔试时,让写一了大堆sql语句,逻辑关系又复杂,最后又来了将近十页的MBTI性格测试,真是有点晕。呵啊。不过现在好了。谢谢