传入字符串,如果大于三个连续键盘序列则返回true,反之返回false
public static boolean keyValiation(String pwd){
boolean isTrue=false;
char[][] keys={
{'q','w','e','r','t','y','u','i','o','p'},
{'a','s','d','f','g','h','j','k','l',';'},
{'z','x','c','v','b','n','m',',','.','/'}};
char[] pwdChars=pwd.toLowerCase().toCharArray();
List list=new ArrayList();
int strIndex=0;
for(int k=0;k<pwdChars.length;k++){
for(int i=0;i<keys.length;i++){
for(int j=0;j<keys[i].length;j++){
if(keys[i][j]==pwdChars[k]){
list.add(i+","+j);
//System.out.print(i+","+j+" ");
}
}
}
}
int index=1;
int tmpY=Integer.parseInt(((String)list.get(0)).split(",")[0]);
int tmpX=Integer.parseInt(((String)list.get(0)).split(",")[1]);
for(int i=1;i<list.size();i++){
int y=Integer.parseInt(((String)list.get(i)).split(",")[0]);
int x=Integer.parseInt(((String)list.get(i)).split(",")[1]);
if(tmpY==y){
if(tmpX-x==-1){
tmpX=x;
index++;
if(index>3){
break;
}
continue;
}else{
tmpY=y;
tmpX=x;
index=1;
continue;
}
}else{
index=1;
tmpX=x;
tmpY=y;
}
}
if(index<4){
tmpY=Integer.parseInt(((String)list.get(0)).split(",")[0]);
tmpX=Integer.parseInt(((String)list.get(0)).split(",")[1]);
for(int i=1;i<list.size();i++){
int y=Integer.parseInt(((String)list.get(i)).split(",")[0]);
int x=Integer.parseInt(((String)list.get(i)).split(",")[1]);
/*System.out.println("x="+x+" "+"y="+y);
System.out.println("tmpX="+tmpX+" "+"tmpY="+tmpY);*/
if(tmpY==y){
if(tmpX-x==1){
tmpX=x;
index++;
if(index>3){
break;
}
continue;
}else{
tmpY=y;
tmpX=x;
index=1;
continue;
}
}else{
index=1;
tmpX=x;
tmpY=y;
}
}
}
//System.out.println(index);
if(index>3){
isTrue=true;
}
return isTrue;
}