"这是一个Java编程示例,用于模拟中国体育彩票大乐透的开奖过程。作者genshuo.Jiang在2020年8月31日编写了这个代码,作为学习或参考的资料。" 在这个Java程序中,主要涉及了以下几个知识点: 1. **Java基础语法**:程序使用了标准的Java类结构,包括类定义(`public class Demo`)、方法定义(`public static void main`)以及注释(`@author` 和 `@date`)。这些是Java编程的基础,用于组织代码并提供必要的元信息。 2. **ArrayList与List接口**:程序中使用了`ArrayList`来存储随机生成的数字。`ArrayList`是Java集合框架中的一个类,实现了`List`接口,允许动态增长的数组,方便添加、删除和访问元素。 3. **集合操作**: - `contains()`:检查列表是否包含特定的元素。 - `add()`:向列表末尾添加元素。 - `size()`:获取列表中元素的数量。 - `sort()`:对列表进行排序。在这个例子中,使用了`Collections.sort()`对两个列表进行升序排列。 4. **随机数生成**:使用`Math.random()`函数生成0到1之间的随机浮点数,然后通过乘以特定范围(35或12)并加上1,将其转换为1到35或1到12之间的整数。这种方法可以确保生成的数字在指定范围内。 5. **条件判断**:`if(!list1.contains(a))`和`if(!list2.contains(b))`用于避免生成重复的随机数,确保每个列表中的数字都是唯一的。 6. **IO操作**:`System.out.println()`和`System.out.print()`用于在控制台打印输出,展示模拟出的大乐透开奖结果。 7. **编程实践**:此代码作为一个学习案例,展示了如何用Java实现一个简单的随机数生成系统,对于初学者来说,可以理解如何用Java进行逻辑控制和数据处理,同时也了解了基本的面向对象编程概念。 这个Java程序虽然简单,但它涵盖了多个核心的编程概念,适合初学者练习和理解Java语言的基本特性。同时,它也可以作为一个模板,进一步扩展成更复杂的彩票模拟系统,例如添加更多验证规则、用户交互界面等。
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/**
* @author: genshuo.Jiang
* @date: 2020/8/31 10:22
*/
//模拟大乐透
public class Demo{
public static void main(String[] args) {
//前5位list集合
List<Integer> list1 = new ArrayList<>();
//后两位list集合
List<Integer> list2 = new ArrayList<>();
//前区1-35,随机五个不重复
while (list1.size() < 5) {
int a = (int) (Math.random() * 35 + 1);
if (!list1.contains(a)) {
list1.add(a);
}
}
//按升序排列
Collections.sort(list1);
System.out.print(list1);
//后区1-12随机2个不重复
while (list2.size() < 2) {
int b = (int) (Math.random() * 12 + 1);
下载后可阅读完整内容,剩余1页未读,立即下载
- 粉丝: 3
- 资源: 4
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- OptiX传输试题与SDH基础知识
- C++Builder函数详解与应用
- Linux shell (bash) 文件与字符串比较运算符详解
- Adam Gawne-Cain解读英文版WKT格式与常见投影标准
- dos命令详解:基础操作与网络测试必备
- Windows 蓝屏代码解析与处理指南
- PSoC CY8C24533在电动自行车控制器设计中的应用
- PHP整合FCKeditor网页编辑器教程
- Java Swing计算器源码示例:初学者入门教程
- Eclipse平台上的可视化开发:使用VEP与SWT
- 软件工程CASE工具实践指南
- AIX LVM详解:网络存储架构与管理
- 递归算法解析:文件系统、XML与树图
- 使用Struts2与MySQL构建Web登录验证教程
- PHP5 CLI模式:用PHP编写Shell脚本教程
- MyBatis与Spring完美整合:1.0.0-RC3详解