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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© eycrckag 中级黑马   /  2013-6-6 11:39  /  1470 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

求1到10的随机数,随机数不能重复。除了存进HashSet集合里面这种方法。是不是存进boolean[]里面也行呀。boolean数组怎么个做法?求教。

评分

参与人数 1技术分 +1 收起 理由
刘胜寒 + 1 神马都是浮云

查看全部评分

2 个回复

倒序浏览
肯定不行啊,boolean[] ,布尔型的数组里面只能存放布尔类型的值,而1到10的随机数是数值型的,肯定不能往布尔类型的数组中存放啊
回复 使用道具 举报
可以存放到boolean数组里面,但是必须是boolean类型的,除了false就是true,所以就有这两数字,因为求的随机数中有此方法,
import java.util.Random;
public class text {
        public static void main(String[] args) {
           Random r=new Random();         
           int i=0;
           boolean s[]=new boolean[2];
           int j=0;
           for(i=0;i<2;i++){
                   s[i]=r.nextBoolean();                 
                   for(j=0;j<i;j++){
                           if(s[i]==s[j]){
                                   i=i-1;
                                   break;
                           }
                   }
                  
           }

           for(int k=0;k<2;k++){
                   System.out.print(s[k]+"  ");
           }
        }
}结果是:false  true  



public class text {
        public static void main(String[] args) {
           Random r=new Random();         
           int i=0;
           int s[]=new int[10];
           int j=0;
           for(i=0;i<10;i++){
                   s[i]=r.nextInt(10);                 
                   for(j=0;j<i;j++){
                           if(s[i]==s[j]){
                                   i=i-1;
                                   break;
                           }
                   }
                  
           }

           for(int k=0;k<10;k++){
                   System.out.print(s[k]+"  ");
           }
        }

}
结果:1  0  3  6  8  9  5  4  7  2  

建议你看一下API文档这样更好理解!希望对你有帮助!

000.png (25.12 KB, 下载次数: 0)

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