黑马程序员技术交流社区
标题:
一道比较意思的题目
[打印本页]
作者:
梁大仙
时间:
2016-11-24 22:58
标题:
一道比较意思的题目
/*1.随机生成4个A-Z(包含A和Z)的字符,将随机获取的4个字符拼接成字符串作为验证码
2.键盘录入一个字符串,将字符串和验证码进行匹配(最多可以匹配3次),
如内容一致则在控制台打印输出"验证成功"并结束程序,如内容不一致且未达到最高的匹配次数,
则继续输入字符串进行匹配,如内容不一致且已达到最高的匹配次数,
在控制台提示"你输入验证次数达到3次,请明天再输入!",并将之前输入过的字符串全部打印输出,结束程序 */
import java.util.Random;
import java.util.Scanner;
class Test {
public static String sm="";
public static void main(String[] args) {
//获取到了4个字符拼接成字符串
for(int x=0;x<4;x++){
int index=new Random().nextInt(26)+65;
sm =sm+(char)index;
}
System.out.println("验证码是: " + sm);
add(sm);
}
public static void add(String am ){
Scanner sl=new Scanner(System.in);
System.out.println("请输入验证码");
String [] by=new String[3];
int ch=2;
for (int i = 0; i <5; i++) {
if(i==3){
System.out.println("你输入验证次数达到3次,请明天再输入");
System.out.println("第一次输入值为:"+by[0]);
System.out.println("第二次输入值为:"+by[1]);
System.out.println("第三次输入值为:"+by[2]);
return;
}
String sm=sl.next();
by[i]=sm;
if(sm.equalsIgnoreCase(am)){
System.out.println("验证成功");
return;
}else if(ch>0){
System.out.println("你还有"+(ch--)+"次机会");
}}}}
作者:
zsq8210366
时间:
2016-11-24 22:59
题很不错,学习了
作者:
zsq8210366
时间:
2016-11-24 23:01
第二题是不是还需要获取时间对象判断一下时间?
作者:
longlong1990
时间:
2016-11-24 23:11
学到了,谢楼主
作者:
efkllx
时间:
2016-11-25 00:05
楼主只是这么写的,不能第二天再重新输
作者:
Kevin_Ye
时间:
2016-11-25 00:12
感谢楼主分享
作者:
梁大仙
时间:
2016-11-25 00:27
zsq8210366 发表于 2016-11-24 23:01
第二题是不是还需要获取时间对象判断一下时间?
题目而已。重新开始还是可以输入。没有必要写时间
作者:
feiruo521
时间:
2016-11-25 21:52
感谢楼主分享
作者:
来到精彩世界
时间:
2016-11-25 23:35
学习了,感谢楼主分享
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2