稍微写了下 有点粗糙
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
public class demo {
/**
* 判断是否是由同一字符构成的,true代表由同一字符构成的 false反之
*/
public static boolean isSameSymbol(String s){
boolean flag=false;
//当s为空字符串或者null,认为不是由同一字符构成的
if(StringUtils.isEmpty(s)){
return flag;
}
//当只有一个字符的时候,认为由同一字符构成
if(1==s.length()){
flag=true;
return flag;
}
char chacter=s.charAt(0);
for(int i=1;i<=s.length()-1;i++){
if(chacter!=s.charAt(i)){
flag=false;
return flag;
}
}
flag=true;
return flag;
}
/**
* 判断是否有顺序 true代表有顺序 false反之
*/
public static boolean isOrdered(String s){
boolean flag=false;
//当s为空字符串或者null,认为不是由同一字符构成的
if(StringUtils.isEmpty(s)){
return flag;
}
//当只有一个字符的时候,认为由同一字符构成
if(1==s.length()){
flag=true;
return flag;
}
List temp1= new ArrayList();
List temp2= new ArrayList();
for(int i=0;i
temp1.add(Integer.valueOf(s.substring(i,i+1)));
}
for(int i=0;i
temp2.add(Integer.valueOf(s.substring(i,i+1)));
}
Collections.sort(temp1);
StringBuffer orderedAsc=new StringBuffer();
for(Integer i:temp1){
orderedAsc.append(i);
}
Collections.sort(temp2);
Collections.reverse(temp2);
StringBuffer orderedDec=new StringBuffer();
for(Integer i:temp2){
orderedDec.append(i);
}
if(s.equals(orderedDec.substring(0))||s.equals(orderedAsc.substring(0))){
flag=true;
return flag;
}
return flag;
}
public static void main(String[] args) {
System.out.println(isSameSymbol("ssss"));
System.out.println(isSameSymbol("saaa"));
System.out.println(isOrdered("12345"));
System.out.println(isOrdered("54321"));
System.out.println(isOrdered("54451"));
}
}
2013年5月21日 14:03