字符串和随机数小案例:模拟用户登录,登录成功后可以玩猜数字游戏
public class Demo1 { public static void main(String[] args) { //1.定义已知的用户名和密码 String username="admin"; String password="123"; for(int i=0;i<3;i++) {//循环控制录入的次数,用户有3次机会 //2.键盘录入用户名和密码 Scanner sc=new Scanner(System.in); System.out.println("请输入用户名:"); String name=sc.nextLine(); System.out.println("请输入密码:"); String pwd=sc.nextLine(); //3.比较用户名和密码 if (name.equals(username) && pwd.equals(password)) { System.out.println("登录成功,开始玩猜数字游戏"); GuessNumGame.start(); break;//在循环次数以内登录成功,就退出循环 }else{ if(i==2) { System.out.println("对不起,您的账号已被绑定"); }else { System.out.println("登录失败,您还有:"+(2-i)+"次机会"); } } } } }guessNumGame工具类代码如下:
public class GuessNumGame { private GuessNumGame() { } public static void start() { //1.产生一个随机数 int num=(int) (Math.random()*100+1); //2.定义一个计数器,记录猜了多少次 int count=0; //3.键盘录入一个数,循环录入,直到猜中为止,结束循环 while(true) { Scanner sc=new Scanner(System.in); System.out.println("请输入你要猜的数(1-100之间):"); int guessNum=sc.nextInt(); count++; //4.比较判断 if (guessNum>num) { System.out.println("你猜的数"+guessNum+"大了"); }else if (guessNum<num) { System.out.println("你猜的数"+guessNum+"小了"); }else { System.out.println("你猜了"+count+"次了,恭喜你猜对了"); break; } } } }
运行结果如下:
请输入用户名:
zhansan
请输入密码:
123
登录失败,您还有:2次机会
请输入用户名:
lisi
请输入密码:
123
登录失败,您还有:1次机会
请输入用户名:
admin
请输入密码:
123
登录成功,开始玩猜数字游戏
请输入你要猜的数(1-100之间):
50
你猜的数50大了
请输入你要猜的数(1-100之间):
25
你猜的数25大了
请输入你要猜的数(1-100之间):
12
你猜的数12大了
请输入你要猜的数(1-100之间):
6
你猜了4次了,恭喜你猜对了