java面试题之随机生成10个不重复的整数

本课程是一套系统学习的课程,涵盖了HTML、CSS、JavaScript、Jquery、Servlet、Jsp、代理、反射、手写自定义框架、mysql数据库、JDBC、Mybatis框架等知识点,学习完上述知识点之后,老师将带领大家完成电商项目实战,将学习的所有知识点整合在一起,达到学以致用的目的;

点击查看课程详情!

​
import java.util.Arrays;

/**
* @author 罗老师<br>
* 课程《Java零基础至高级应用》提供全套【代码+笔记+相关开发工具+答疑服务】

 *查看课程
*/
public class LianXi_06 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
        /*
         * 随机生成10个不重复的整数 范围在 1 - 20 (不包括20)之间 ,输出排序好的数组。由小至大    由大至小排序
         * 
         * */

//创建长度为10的数组,用于存放随机生成整数(1 - 20 )之间
//[0][0][0][0][0][0][0]....
int[] array = new int[10];

//创建Random
java.util.Random random = new java.util.Random();

OUT:
for (int i = 0; i < array.length; i++) {

//通过random的nextInt方法生成随机数
int data = random.nextInt(20);//生成0 到  20之间的随机数
//将随机数存放在数组中时,要先进性判断,如果该随机数已经存在则本次生成的随机数无效,也不需要放入数组中,重新生成

//遍历数组,判断刚刚生成的随机数再数组中是否存在
for (int j = 0; j < array.length; j++) {
if(data == array[j]) {
i--;
//说明该随机数已经存在,退出循环继续下一次循环
continue OUT;
}

}

//将生成好的随机数存放在数组中
    array[i] = data;

}

//打印数组中的元素
System.out.println("排序前数组中的元素信息:"+Arrays.toString(array));


//1、对数组中的元素进行有小往大排序   以及  2、对数组中的元素进行有大往小排序

//由小往大排序
//通过外循环控制需要比较的趟数
/*for (int i = 0; i < array.length - 1; i++) {

//通过内循环控制比较的次数
for (int j = 0; j < array.length - 1 - i; j++) {
//定义临时变量
int temp;
if(array[j] > array[j+1]) {
temp = array[j+1];
array[j+1] = array[j];
array[j] = temp;
}

}

}*/

//打印数组中的元素
//System.out.println("数组中的元素进行由小往大排序后的结果:"+Arrays.toString(array));

//由大往小排序
for (int i = 0; i < array.length - 1; i++) {

//通过内循环控制比较的次数
for (int j = 0; j < array.length - 1 - i; j++) {
//定义临时变量
int temp;
if(array[j] < array[j+1]) {
temp = array[j+1];
array[j+1] = array[j];
array[j] = temp;
}

}

}

//打印数组中的元素
System.out.println("数组中的元素进行由大往小排序后的结果:"+Arrays.toString(array));

}


}

​

有知识点整合在一起,达到学以致用的目的;

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT实战营

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值