package hubeiershi3;import java.util.Iterator;
import java.util.Map;
import java.util.Random;
import java.util.Set;
import java.util.TreeMap;public class RandomSortTest
{
       public static void main(String[] args)
{
           Map map = new TreeMap();
        Random random = new Random();
          
          
          for(int i = 0; i < 50; i++)
          {
           int number = random.nextInt(41) + 10;
           
           Integer in = new Integer(number);
           
           if(map.get(in) == null)
           {
           map.put(in, new Integer[1]); 
           }
           else
           {
           int value = ((Integer)(map.get(args[i]))).intValue();
           map.put(in, new Integer(value + 1)); 
           }
          }
          Set set = map.entrySet();
          for(Iterator iter = set.iterator(); iter.hasNext();)
          {
           Map.Entry entry = (Map.Entry)iter.next();
           
           Integer key = (Integer)entry.getKey();
           Integer valu = (Integer)entry.getValue();
           
           System.out.println(key + ":" +valu);
          }
}
}

解决方案 »

  1.   

    Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 9
    at hubeiershi3.RandomSortTest.main(RandomSortTest.java:29)
     
    像这样报错 我不知道是什么原因 也不知道怎么改
      

  2.   

    把你这段代码for(int i = 0; i < 50; i++)
    改为
    for(int i = 0; i < args.length; i++)
      

  3.   

    int value = ((Integer)(map.get(args[i]))).intValue();看一下这句,可能是这的问题。
    可以在这句打个断点,看args[i]能不能取到值。不知道你的args数组有没有赋值。