package test;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Ball {
private List<Integer> redBalls;
private Integer blueBall;
public Ball() {
calculateRedBalls();
calculateBlueBall();
}
private void calculateRedBalls() {
List<Integer> balls = new ArrayList<Integer>();
for (int i = 1; i <= 33; i++) {
balls.add(i);
}
Collections.shuffle(balls);
redBalls = new ArrayList<Integer>(balls.subList(0, 6));
Collections.sort(redBalls);
}
private void calculateBlueBall() {
blueBall = (int) (Math.random() * 16 + 1);
}
@Override
public String toString() {
return "红色球是: " + redBalls + " and蓝色球是: " + blueBall;
}
public static void main(String[] args) {
Ball ball = new Ball();
System.out.println(ball);
}
}
以上是引用别人的,还可以有另一种方法
package test;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
import java.util.Vector;
public class Test {
static Random r = new Random();
public static int getRandomIntWithinRange(int cap) {
return r.nextInt(cap)+1;
}
/**
* @param cap 最大到多少,如35,最大到35
* @param count,总共产生几个数,如5,产生5个数
* */
public static Vector getRandomIntArrayWithinRange(int count, int cap) {
Vector v = new Vector();
Vector ret = new Vector();
for(int i=1;i<=cap;i++) {
v.add(new Integer(i));
}
//确保不重复
for(int i=1;i<=count;i++) {
int index = getRandomIntWithinRange(cap+1-i);
ret.add(v.remove(index-1));
}
Collections.sort(ret);
return ret;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Vector v=getRandomIntArrayWithinRange(5,35);
String s=""+v;
s=s.replace("[", "");
s=s.replace("]", "");
System.out.println(s);
}
}
分享到:
相关推荐
* 在金融领域中,用于生成随机数,以便于模拟金融市场的变化。 概率随机数是Java 中一个非常重要的概念,对于生成随机数和判断返回的数字非常有用。 在实际应用中,我们可以根据需要调整概率分布,以使其更加符合...
在Java中,生成随机数通常使用java.util.Random类。这个类提供了多种方法来生成不同类型的随机数,如nextInt()用于生成指定范围内的整数。为了确保每次生成的随机数是唯一的,我们需要对生成的随机数进行检查,确保...
这个名为“随机数程序”的压缩包显然提供了一个用于生成随机数的C语言实现。让我们详细探讨一下其中涉及的知识点。 首先,我们要理解随机数的基本概念。在计算机科学中,虽然数字是确定性的,但通过特定算法,我们...
在Java开发技术中,使用Random函数可以生成随机数,生成随机数可以用于各种场景。但是,在生成随机数时,需要注意可能出现的重复情况,可以使用其他方法来避免重复的情况。 六、扩展阅读 在Java开发技术中,还有...
此技术常用于各种场景,比如彩票系统、抽奖程序或需要无重复随机选择的应用。 ### 一、基本原理 生成不重复的随机数主要涉及两个关键步骤: 1. **创建一个有序序列**:首先准备一个包含所有可能数字的数组。 2. **...
在Android中,可以使用java.util.Random类来生成随机数。为了模拟彩票开奖,开发者可能定义了一系列规则,如数字范围、是否包含重复数字等。例如,假设彩票号码由6个1到49之间的不重复数字组成,那么可以创建一个...
综上所述,实现随机双色球生成器的Java程序涉及到的知识点包括:使用`Random`类生成随机数、理解整数范围、创建批处理文件在Windows环境下运行程序,以及对Java多线程的基本认识。这个简单的程序可以作为一个起点,...
- 随机数生成逻辑:创建引擎和分布,生成随机数。 - 用户交互:输出结果,接受用户输入,处理用户请求。 - 函数封装:为了代码可读性和复用性,可以将部分功能封装成独立的函数。 在分析了彩票生成器的基本工作...
2. **生成随机数**:使用`Math.random()`函数生成一个介于0(含)至1(不含)之间的随机小数,再通过乘法和取整操作转换为所需的随机整数。 3. **判断重复性**:在将随机数添加到数组之前,需要检查该随机数是否已...
这个资源提供了一个简单的旋转矩阵,特别适用于彩票系统,帮助生成随机数或特定模式的序列。源码的提供使得用户能够理解其工作原理,并根据需求进行定制。 旋转矩阵本质上是一种矩阵变换,它通过特定的算法对矩阵的...
在C#中,可以使用`System.Random`类来生成随机数。通过设定随机数的范围,可以确保生成的号码符合彩票规则。同时,为了满足用户可能的需求,源码可能会包含一些定制化选项,如排除已选号码、设置热冷号比例等。 在...
在JavaScript编程语言中,生成随机数是一项常见的任务,特别是在创建模拟真实世界情况的应用,比如彩票系统,游戏或者数据加密等场景。"javascript随机数"这个主题涵盖了如何在JS中生成随机数以及如何实现排除法随机...
彩票号码生成器的核心功能在于生成随机数。在C++中,可以使用或库来实现随机数的生成。例如,中的rand()函数可以生成一个介于0到RAND_MAX之间的随机整数,而库则提供了更高级的随机数生成器,如mt19937,它可以生成...
在彩票行业中,开奖结果通常由复杂算法生成的随机数决定,而彩票模拟程序则能够复现这一过程,为用户提供一个可控制的实验环境。 在VC(Visual C++)环境下开发彩票模拟程序,我们可以利用C++语言的强大功能,特别...
1. `createOneTicket()`:此方法用于生成一张彩票,即六个不重复的随机数。它使用`Random`类的`nextInt(int bound)`方法生成0(包括)到23(不包括)之间的随机整数,然后将其转换为字符串并存储在一个数组中。 2. ...
在Java编程语言中,生成随机数是一项常见的任务,可以用于各种场景,如模拟、测试、游戏等。在Java中,可以使用`java.util.Random`类来生成随机数。以下是一篇关于Java随机数生成的详细解释,以及一个具体的实现代码...
在这个升级版的实现中,我们看到代码利用了JavaScript的`Math.random()`函数来生成随机数,并结合DOM操作来更新页面上的彩票号码。 首先,`Math.random()`函数是JavaScript内置的一个全局函数,用于生成一个0到1...
随机数生成是彩票模拟的关键部分,VB提供了内建的函数来生成随机数,如`Rnd()`函数,它可以与`Seed`函数配合设定随机数种子,确保每次运行时都能得到不同的随机数序列,从而模拟真实的彩票摇奖过程。 【彩票模拟器...
首先,我们需要理解JavaScript中用于生成随机数的主要函数`Math.random()`。这个函数生成一个0到1之间的伪随机数,不包括1。为了生成特定范围内的随机数,可以使用`Math.random()`来实现。例如,如果想要生成从`min`...
在我们的彩票号码生成场景中,多线程可以帮助我们提高效率,比如,一个线程负责生成随机数,另一个线程负责验证这些数字是否符合彩票规则,这样可以并行处理,减少等待时间。 C#中实现多线程主要有两种方式:Thread...