A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马—杨磊 中级黑马   /  2013-5-26 17:06  /  2202 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public static void main(String[] args) {  
       List list1 = new ArrayList();   //保存50个随机数  
        List list2 = new ArrayList();   //保存其中为偶数的随机数  
  
      int ranNum ;  
                  
       //生成50个随机数,放入list1中,其中的偶数单独放到list2中  
       for(int i=0;i<50;i++)  
       {  
           ranNum = (int)(Math.random()*100);  
          //判断是否为偶数  
           if(ranNum%2==0)  
           {  
               list2.add(ranNum);  
            }  
           list1.add(ranNum);  
      }  
         
        //对偶数进行排序(升序)  
       Collections.sort(list2);         
       System.out.println(list1);  
       System.out.println(list2);  
         
      //把偶数降序输出  
        for(int i=list2.size();i>0;i--)  
       {  
            System.out.print(list2.get(i-1)+", ");  
        }  
       System.out.println();  
         
        //混淆所有的数据  
        Collections.shuffle(list1);  
       System.out.println(list1);  
  
   }  

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

1 个回复

倒序浏览
你说的随机输出整偶数指的是啥
如果只是单纯的输出随机偶数的话那么直需要在输出随机数是加一段判断代码就是
如果你说的是输出你那list2的话可以看看下面这段代码。。。。
貌似你那段代码是java写的,我这没jre不好调试就c#化了。。。。。
  1. ArrayList list2 = new ArrayList();//创建一个数组
  2.             list2.Add(1);//添加元素
  3.             list2.Add(2);
  4.             list2.Add(3);
  5.             list2.Add(4);
  6.             list2.Add(5);
  7.             Random a = new Random();//创建随机数输出器
  8.             ArrayList tlist = list2;//创建一个副本
  9.             for (int i = tlist.Count; i > 0; i--)//遍历输出
  10.             {
  11.                 int tmp = a.Next(0, tlist.Count-1);//产生一个随机整数
  12.                 Console.WriteLine(tlist[tmp]);//列出当前随机数位置的数
  13.                 tlist.RemoveAt(tmp);//删除当前随机数位置的数
  14.             }
  15.             Console.ReadKey();
复制代码
思路就是产生一个随机数(这个随机数不会超过数组的长度-1)
然后输出当前随机数位置的数组里的数
最后重数组里删除这个数
重复循环到最后数组里无数字


评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马