//随机生成双色球号码

//案例:6颗红球(33选1)  1颗蓝球(16选1)

代码实现如下:

import java.util.Random;
import java.util.Arrays;
//包含Arrays

public class HelloWorld {
	public static void main(String[] args){

		String[] getball = getBalls();
		System.out.println(Arrays.toString(getball));
	}

	public static String[] getBalls()
	{
		//随机生成双色球号码
		//案例:6颗红球(33选1)  1颗蓝球(16选1)
		String []pool = {
		"01","02","03","04","05","06","07","08",
		"09","10","11","12","13","14","15","16",
		"17","18","19","20","21","22","23","24",
		"25","26","27","28","29","30","31","32","33"
		};
		//用一个数组存放6个蓝色的球
		String[] balls = new String[6];
		int length = 0 ;
		//从pool数组中随机选取6个球,放入数组中,并且不能有重复
		/*
		 * 1、如何随机取
		 *    Random r = new Random();
		 *    r.nextInt(n); //取到0到n之间的随机数
		 * 2、如果不重复
		 * 	  一个下标的球被使用我们给它加个标识
		 *   boolean[] flag  = new bootlean[pool.length];数组中元素默认为false
		 */
		boolean[] used = new boolean[pool.length];
		Random r = new Random();
		while(true){
			int index = r.nextInt(pool.length);
			//说明该下标已经被使用过
			if(used[index])
				continue ; //结束本次循环,继续下一次循环
			balls[length++] = pool[index];//把选中的球放入球数组
			used[index] = true ;//把选中的球标识为已经使用过。
			if(length == balls.length) //如果下标等于6,证明选完了
				break ;
		}
		//红色的球已经选完了
		Arrays.sort(balls);
		//扩容一个空间,最后一个放蓝球
		//balls = Arrays.copyOf(balls,balls.length+1); 不知道为什么不行,疑惑中
		String []str = new String[balls.length+1]; //所以我只能使用这种老土的方法来实现数组扩容了
		for(int i = 0 ; i < balls.length ; i++)
			str[i] = balls[i];
		balls = str ;
		//balls = Arrays.copyOf(balls,balls.length+1);
		//蓝色的球16选1即可
		balls[balls.length-1] = pool[r.nextInt(16)];
		return balls ;
	}
}

Java案例:双色球的实现的更多相关文章

  1. _00019 Storm架构介绍和Storm获取案例(简单的官方网站Java案例)

    博文作者:妳那伊抹微笑 itdog8 地址链接 : http://www.itdog8.com(个人链接) 博客地址:http://blog.csdn.net/u012185296 博文标题:_000 ...

  2. java编写双色球源代码。-----系统作为彩票双色球生成器,模拟机选一注双色球的彩票号码

    package demo2; import java.util.Arrays; import java.util.Random; /** * 系统作为彩票双色球生成器,模拟机选一注双色球的彩票号码: ...

  3. 3#Java案例

    以下内容引用Github地址https://github.com/DuGuQiuBai/Java/blob/master/day01/code/02_%E5%B8%A6%E6%B3%A8%E9%87% ...

  4. Java案例整理

    1.随机点名器案例 1.1      案例介绍 随机点名器,即在全班同学中随机的找出一名同学,打印这名同学的个人信息. 此案例在我们昨天课程学习中,已经介绍,现在我们要做的是对原有的案例进行升级,使用 ...

  5. Java案例:随机点名器

    案例介绍: 随机点名器,即在全班同学中随机的找出一名同学,打印这名同学的个人信息.需具备以下3个内容:1)存储所有同学姓名2)总览全班同学姓名3)随机点名其中一人,打印到控制台 案例需求分析: 全班同 ...

  6. Java案例:超市库存管理系统

    案例介绍: 模拟真实的库存管理逻辑,完成超市管理系统的日常功能实现,见下图 案例需求分析: 根据案例介绍,我们进行分析,首先需要一个功能菜单,然后输入功能序号后,调用序号对应的功能方法,实现想要的操作 ...

  7. Java模拟双色球彩票

    package practice1; import java.util.Random; import java.util.Scanner; public class Test3 { /** * * 模 ...

  8. Java案例之随机验证码功能实现

    实现的功能比较简单,就是随机产生了四个字符然后输出.效果图如下,下面我会详细说一下实现这个功能用到了那些知识点,并且会把 这些知识点详细的介绍出来.哈哈 ,大神勿喷,对于初学Java的人帮助应该蛮大的 ...

  9. Java案例——学生管理系统

    简单完整的学生管理系统 学生类 public class Student { private String id; private String age; private String name; p ...

随机推荐

  1. gulp将多张小图自动合成雪碧图

    最近一直在做移动端的改版项目,做之前老大就跟我说了好几次,说这次改版一定要用雪碧图减少一个页面的图片的请求次数,能加快页面的加载速度就一定要加快,我说可以.因为之前的项目开发时间过短,也没有时间去慢慢 ...

  2. 2018年4月更新70多个公司dnc招聘职位

    2018年4月更新70多个公司dnc招聘职位 请在本页回复,补充dnc招聘信息.公司案例 dnc简介 dnc = .NET Core.dotnet Core简写 dnc是微软新一代主力编程平台,开源. ...

  3. JAVA 面试基础

    经典的Java基础面试题________________________________________________________________________________________ ...

  4. Dynamics CRM2016 WebApi查询之alternate key

    本篇继续来分享web api查询中的一条,利用alternate key进行查询. alternate key是个什么东西这里就不解释了如果有不知道的可以去看sdk.这里以房号信息实体为例,新建一个键 ...

  5. ngx.ctx

    https://github.com/openresty/lua-nginx-module#ngxctx 要点 生命周期和请求一致 每个请求的ngx.ctx是相互独立的,包括ngx.location. ...

  6. 安卓框架——SlidingMenu使用技巧

    SlidingMenu的一些常用属性 原文转载http://blog.csdn.net/zwl5670/article/details/48274109 [java] view plain copy ...

  7. Lua判断OS并添加cpath

    Lua判断OS并添加cpath(金庆的专栏)Lua初始化时需要根据OS来设置package.cpath, 如果是Windows系统则添加 ?.dll, 否则添加 ?.so.不然加载错误后缀名的动态库会 ...

  8. hive 压缩全解读(hive表存储格式以及外部表直接加载压缩格式数据);HADOOP存储数据压缩方案对比(LZO,gz,ORC)

    数据做压缩和解压缩会增加CPU的开销,但可以最大程度的减少文件所需的磁盘空间和网络I/O的开销,所以最好对那些I/O密集型的作业使用数据压缩,cpu密集型,使用压缩反而会降低性能. 而hive中间结果 ...

  9. JVM基础知识GC

    在网上看到一篇很不错的讲解JVM GC的文章,看完之后觉得可以留着以后多看几遍便转载了下来.但是找了半天也没有找到原作者地址.抱歉不能标明原文地址了.以下是文章内容. 几年前写过一篇关于JVM调优的文 ...

  10. hive分组排序 取top N

    pig可以轻松获取TOP n.书上有例子 hive中比较麻烦,没有直接实现的函数,可以写udf实现.还有个比较简单的实现方法: 用row_number,生成排名序列号.然后外部分组后按这个序列号多虑, ...