zoukankan      html  css  js  c++  java
  • 《java入门第一季》之类小案例(模拟用户登录)

    首先是做一个用户登录的小案例。在此基础上加入其它逻辑。
    
    import java.util.Scanner;
    
    /*
     * 模拟登录,给三次机会,并提示还有几次。如果登录成功,就可以玩猜数字小游戏了。
     * 
     * 分析:
     * 		A:定义用户名和密码。已存在的。
     * 		B:键盘录入用户名和密码。
     * 		C:比较用户名和密码。
     * 			如果都相同,则登录成功
     * 			如果有一个不同,则登录失败
     * 		D:给三次机会,用循环改进,最好用for循环。
     */
    public class StringTest2 {
    	public static void main(String[] args) {
    		// 定义用户名和密码。已存在的。
    		String username = "admin";
    		String password = "admin";
    
    		// 给三次机会,用循环改进,最好用for循环。
    		for (int x = 0; x < 3; x++) {
    			// x=0,1,2
    			// 键盘录入用户名和密码。
    			Scanner sc = new Scanner(System.in);
    			System.out.println("请输入用户名:");
    			String name = sc.nextLine();
    			System.out.println("请输入密码:");
    			String pwd = sc.nextLine();
    
    			// 比较用户名和密码。
    			if (name.equals(username) && pwd.equals(password)) {
    				// 如果都相同,则登录成功
    				System.out.println("登录成功,开始玩游戏");
    				//猜数字游戏
    				GuessNumberGame.start();
    				break;
    			} else {
    				// 如果有一个不同,则登录失败
    				// 2,1,0
    				// 如果是第0次,应该换一种提示
    				if ((2 - x) == 0) {
    					System.out.println("帐号被锁定,请与班长联系");
    				} else {
    					System.out.println("登录失败,你还有" + (2 - x) + "次机会");
    				}
    			}
    		}
    	}
    }


    
    

    接下来改进一下代码。加入一些逻辑——当用户登录成功之后,进行猜数字小游戏。

    import java.util.Scanner;
    //模拟登录,给三次机会,并提示还有几次。如果登录成功,就可以玩猜数字小游戏了。
    public class StringTest2 {
    	public static void main(String[] args) {
    		// 定义用户名和密码。已存在的。
    		String username = "admin";
    		String password = "admin";
    
    		// 给三次机会,用循环改进,最好用for循环。
    		for (int x = 0; x < 3; x++) {
    			// x=0,1,2
    			// 键盘录入用户名和密码。
    			Scanner sc = new Scanner(System.in);
    			System.out.println("请输入用户名:");
    			String name = sc.nextLine();
    			System.out.println("请输入密码:");
    			String pwd = sc.nextLine();
    
    			// 比较用户名和密码。
    			if (name.equals(username) && pwd.equals(password)) {
    				// 如果都相同,则登录成功
    				System.out.println("登录成功,开始玩游戏");
    				//猜数字游戏
    				GuessNumberGame.start();
    				break;
    			} else {
    				// 如果有一个不同,则登录失败
    				// 2,1,0
    				// 如果是第0次,应该换一种提示
    				if ((2 - x) == 0) {
    					System.out.println("帐号被锁定,请与班长联系");
    				} else {
    					System.out.println("登录失败,你还有" + (2 - x) + "次机会");
    				}
    			}
    		}
    	}
    }
    猜数字小游戏的代码另写在一个类里面。
    mport java.util.Scanner;
    
    /*
     * 这时猜数字小游戏的代码
     */
    public class GuessNumberGame {
    	private GuessNumberGame() {
    	}
    
    	public static void start() {
    		// 产生一个随机数
    		int number = (int) (Math.random() * 100) + 1;
    
    		while (true) {
    			// 键盘录入数据
    			Scanner sc = new Scanner(System.in);
    			System.out.println("请输入你要猜的数据(1-100):");
    			int guessNumber = sc.nextInt();
    
    			// 判断
    			if (guessNumber > number) {
    				System.out.println("你猜的数据" + guessNumber + "大了");
    			} else if (guessNumber < number) {
    				System.out.println("你猜的数据" + guessNumber + "小了");
    			} else {
    				System.out.println("恭喜你,猜中了");
    				break;
    			}
    		}
    	}
    }
    

    编译运行,挺好玩的小案例。

  • 相关阅读:
    [BZOJ 4001] [TJOI 2015] 概率论
    【计算几何】推导坐标的旋转公式
    【动态规划学习】01背包
    (坑)网络流24题
    bzoj2442(单调队列优化)
    [lydsy2005]能量采集
    主席树
    [noi2005][treap]序列维护
    [Apio2012][Treap]派遣
    [CodeVs][1514][Treap][书架]
  • 原文地址:https://www.cnblogs.com/wanghang/p/6299834.html
Copyright © 2011-2022 走看看