您的位置:首页 > 编程语言 > Java开发

java随机数:彩票抽奖 + 验证码

2016-01-16 00:19 411 查看
package 随机数;

import java.util.Random;

public class 彩票抽奖 {

public static void main(String[] args) {
// TODO 自动生成的方法存根

//彩票抽奖。在1~36之间随机7个数,且不能重复。1定义数组2实例化随机数3生成随机序列4对产生的数验证5去0;6去重复7输出

int[] cp = new int[7];//定义一个数组,长度是7
Random dom = new Random();//先实例化随机变量
System.out.println("抽到的彩票号码是:");
for(int i=0; i<cp.length; i++)
{
int t = dom.nextInt(36);//定义随机数的取值范围,接收随机数

//对产生的数字进行验证.如果出现0,那么要重新生成一个数。
//只要出现0就continue,继续生成一个数,直到没有0出现。
if(t==0)  //
{
i--;   //
continue;//
}

//验证完成后,去重复。检查重新生成的数是否与其他数重复
else
{
boolean h = false;//定义h
for(int c:cp)//遍历。使每一个数都和他前面的所有数挨个比较
{
if(c==t)//,如果有重复就执行下面语句。不重复就返回for。
{
i--;
h = true;
break;//break中断,只要出现重复数字就返回,不必在和后面的数比较了。
}
}

if(h)
{
continue;//

}
}

cp[i]=t;

}

for(int c:cp)  //遍历数组输出
{
System.out.print(c+" ");
}

System.out.println("\n");

//生成验证码
String ran1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";//定义字符串
int number = ran1.length();//ran1的长度
Random ran = new Random();//实例化随机数
System.out.print("生成验证码:");
for(int i=0; i<4; i++)
{
int a = ran.nextInt(number-1);//从61中随机取数
String a1 = ran1.substring(a, a+1);//截取第a+1个字符
System.out.print(a1);
}

}

}

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: