闲来无事 编个双色球生成的程序 有什么意见大家多提提_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 闲来无事 编个双色球生成的程序 有什么意见大家多提提

闲来无事 编个双色球生成的程序 有什么意见大家多提提

 2014/3/29 18:19:18  ilove87you  程序员俱乐部  我要评论(0)
  • 摘要:1、生成要用的类及方法importjava.util.Arrays;importjava.util.Random;publicclassUtil{/***返回随机生成的球*@paramscope红色球范围(1-33)蓝色球(1-16)*@paramtype用于标识是产生红色球还是蓝色球redblue*@return*/publicStringgetBar(){int[]reds=newint[6];int[]blues=newint[1]
  • 标签:程序 大家 什么
1、生成要用的类及方法
import java.util.Arrays;
import java.util.Random;

public class Util {

/**
* 返回随机生成的球
* @param scope 红色球范围(1-33)  蓝色球(1-16)
* @param type 用于标识是产生红色球还是蓝色球 red blue
* @return
*/
public String getBar(){

int[] reds = new int[6];
int[] blues = new int[1];
String[] blueBars = new String[1];
String[] redBars = new String[6];
int Index = 0;

// 取得球
blues[0] =getPerBar(17);
blueBars = addZero(blues);

// 取得红色球
for(int i=0;i<6;i++){
int redBar = getPerBar(34);
if(i==0){
reds[Index++] = redBar;
}else{
if(judgeIsSameNum(redBar, reds, Index-1)){
i--;
}else{
reds[Index++] = redBar;
}
}
}
Arrays.sort(reds);
redBars = addZero(reds);

return printResult(redBars, blueBars);

}

/**
* 将生成的随机数加0;
* @param result
* @return
*/
public String[] addZero(int[] result){
String[] str = new String[result.length];
int index = 0;
for(int i=0;i<result.length;i++){
if(result[i]<10){
String temp = "0"+result[i];
str[index++] = temp;
}else{
str[index++] = String.valueOf(result[i]);
}
}
return str;
}

/**
* 每次随机产生一个数并将结果返回
* @param scope
* @return
*/
public int getPerBar(int scope){
int temp = new Random().nextInt(scope);
if(0==temp){
temp = getPerBar(scope);
}
return temp;
}

/**
* 判断前面生成的数据与当前生成的数据是否有相同的 如果有相同的返回true,如果不相同返回false;
* @param num 刚生成的数据
* @param nums 已经添加了数据的数组
* @param endIndex 数组中结束标记
* @return
*/
public boolean judgeIsSameNum(int num,int[] nums,int endIndex){
boolean isSameNum = false;
for(int i=0;i<endIndex;i++){
if(num==nums[i]){
isSameNum = true;
break;
}
}
return isSameNum;
}

/**
* 返回生成的结果
* @param redBars
* @param blueBars
* @return
*/
public String printResult(String[] redBars,String[] blueBars){
StringBuffer sb = new StringBuffer();
for(int i=0;i<redBars.length;i++){
if(i != redBars.length-1){
sb.append(redBars[i]).append("  ");
}else{
sb.append(redBars[i]).append("  +  ");
}
}
sb.append(blueBars[0]);
return sb.toString();
}
}

2、在主方法里调用

public class TestMain {
public static void main(String[] args) {
String result = new Util().getBar();
System.out.println(result);
}
}
上一篇: 虚拟现实新的应用形式:让你成为任何人 下一篇: 没有下一篇了!
发表评论
用户名: 匿名