标题: JAVA经典算法题 [打印本页] 作者: zhenshuai888 时间: 2017-1-8 09:32 标题: JAVA经典算法题 随机生成60个1-100之间不同的整数,在控制台上打印出这些数字中能被3整除但不能被7整除的数字作者: gczsjj 时间: 2017-1-8 09:38
是60是个不同的数,还是60是个随机数啊 作者: zhenshuai888 时间: 2017-1-8 09:41
public class Test {
public static void main(String[] args) {
Random r = new Random();
int count = 0;
int x = 0;
for (int i = 0; count< 60; i++) {
x = r.nextInt((100)+1);
if(x%3==0&&x%7!=0){
System.out.println(x);
count++;
}
}
System.out.println("能3整除但不能被7整除的数字已生成"+count+"个");
}
}
我的做法 大家看看有没有什么问题作者: gczsjj 时间: 2017-1-8 09:45
package com.heima.tests;
import java.util.Random;
public class Demo1_Random {
public static void main(String[] args) {
Random r = new Random();//不传入种子的构造方法
for(int i =1;i <= 60;i++) {//生成60个随机数
int n = 1 +r.nextInt(100);//r.nextInt(100)生成的是[0,100)
if(n % 3 == 0 && n % 7 != 0) {
System.out.println(n);
}
}
}
}
public class Test2 {
public static void main(String[] args) {
Random random = new Random();
Set<Integer> set = new HashSet<Integer>();
while(set.size()<60) {
//获取随机数的方法
int a = random.nextInt(100)+1;
//获取到的随机数存入set集合,set集合会自动去重.
set.add(a);
}
//1.5的新特性:自动拆装箱
for (Integer integer : set) {
if (integer%3==0&&integer%7!=0) {
System.out.println(integer);
}
}
}
}