js 测试题

var str="abaasdffggghhjjkkgfddsssss";  //查出str中每个字母的个数,以及出现次数最多的字母次数

var c=new Array();

var i=0;

while(str.charAt(0)){

    c[i]=str.charAt(0)+'='+(str.split(str.charAt(0)).length-1);

    str=str.split(str.charAt(0)).join('');

    i++;

}

alert(c);



for(var j=0,m=0;j<c.length;j++){

    if(m<=c[j].split('=')[1]){

       m=c[j].split('=')[1];

       i=j;

    }

}

alert(c[i]);
var str="abc工";  /统计字节数

var c=0;

for(var i=0;i<str.length;i++){

    if(str.charCodeAt(i)>255)

         c+=2;

    else

         c++;

}

alert(c);

 
java版:

//java中没有像js中数组的join方法,split的算法也不一样,当只有一个或多个相同的字符时java中split后数组长度为0
public static void main(String[] args) throws Exception { String str="abbcccddddeaaaaaaaaaaaaaaaaaaaaafgbrekljgklwej"; Map<Character,Integer> count=new HashMap<Character, Integer>(26); for(int i=0;i<str.length();i++){ char c=str.charAt(i); if(c!=-1){ if(count.get(c)!=null){ //已经添加过 count.put(c, count.get(c)+1); }else{//没有添加过 设置值为1 count.put(c,1); } } } int maxKey=count.get(str.charAt(0)); for(int i=0;i<str.length();i++){ if(maxKey<count.get(str.charAt(i))){ maxKey=i; } } System.out.println(str.charAt(maxKey)+":"+count.get(str.charAt(maxKey))); }

 

//转换¥public class TestString {



    private static final char[] data = new char[]{

            '零','壹','贰','叁','肆','伍','陆','柒','捌','玖'

        }; 

    private static final char[] units = new char[]{

        '元','拾','佰','仟','万','拾','佰','仟','亿'

    };

    public static void main(String[] args) {

        System.out.println(convert(123456789));

    }



    public static String convert(int money)

    {

        if(money==0)return (data[0]+"")+units[0];

        StringBuffer sb=new StringBuffer();

        int unit=0;

        while(money!=0){

            sb.insert(0, units[unit++]);

            int number=money%10;

            sb.insert(0, data[number]);

            money/=10;

        }

        return sb.toString();

    }



}

 

你可能感兴趣的:(测试题)