将任意字符串转换为1-100的数字

解决方案 »

  1.   

    难道楼主说的是ASCII码转换?
    或者是Integer.parseInt("5") ;
      

  2.   

    .hashCode()%100+1需求不够详细,不知道是不是楼主要的
      

  3.   

    找一个hash算法就好了,比如楼上的方法,还比如 可以把字符串里的每个字符直接相加 再与100做模运算等等 相同的字符串肯定能够得到一个相同的数字  问题就是不同的字符串得到相同的数字 怎么办?也就是1-100这个范围太小了 冲突肯定挺严重的
      

  4.   


    public class CSDN{
    public static void main(String[] args){
    CSDN tmp = new CSDN();
    System.out.println(tmp.encode("abc"));//(1)
    System.out.println(tmp.encode("efg"));
    System.out.println(tmp.encode("abc"));//the same as (1)
    System.out.println(tmp.encode("beb"));//the same as (1)
    System.out.println(tmp.encode("aaaaaaa"));
    } public int encode(String str){
    return (str.charAt(0)+str.charAt(str.length()-1))*str.length()%100;
    }
    }
      

  5.   

    楼主的需求很特别。就用hashCode()%100 
    这个可以实现。