for循环例子2
代码
点击查看【ForTest2.java】代码
//package com.d;
import java.util.Scanner;
/**
* for循环例子2
* @date: 2022.2.24
* 用户登录验证,上限3次。
* */
public class ForTest2 {
public static void main(String[] args) {
// 举例用户信息
String username = "admin";//用户名
String pad = "123";//密码
int sum = 3; //限定3次账户密码试错的机会,sum--; sum < 1; break;
// 模拟用户登录
Scanner input = new Scanner(System.in);
// 验证用户名
System.out.print("欢迎使用Windows系统,请输入用户名:");
for (;;){ //死循环的另一种写法
if (sum < 1) break;// 及时检查试错次数,并终止循环
String putuser = input.next();
if (username.equals(putuser)){ //用 String.equals(); 比较两个字符串是否相同。
// 用户名对了,才有权限验证密码
System.out.print("请输入密码:");
for (;;){
if (sum < 1) break;// 及时检查试错次数,并终止循环
String putpad = input.next();
if (pad.equals(putpad)){
System.out.println("用户:【"+ putuser +"】登录成功!");
break;//登录成功!跳出死循环
}else {
sum--;//试错计数
if (sum!=0) System.out.print("密码不对!只剩【"+ sum +"】次机会了,请重新输入:");
if (sum == 0) System.out.println("您无权访问,请稍后再试!");
continue;//密码不对,进入下一循环
}
}
}else {
sum--;//试错计数
if (sum!=0) System.out.print("没有该用户,只剩【"+ sum +"】次机会了,请重新输入:");
if (sum == 0) System.out.println("您无权访问,请稍后再试!");
continue;//用户名不对,进入下一循环
}
// 如果一切顺利,输入用户名密码后程序会执行到这里,还得手动跳出死循环
break;
}
}
}
运行
String username = "admin";//用户名
String pad = "123";//密码
欢迎使用Windows系统,请输入用户名:zhangsan
没有该用户,只剩【2】次机会了,请重新输入:admin
请输入密码:666
密码不对!只剩【1】次机会了,请重新输入:123
用户:【admin】登录成功!
欢迎使用Windows系统,请输入用户名:lisi
没有该用户,只剩【2】次机会了,请重新输入:admin
请输入密码:888
密码不对!只剩【1】次机会了,请重新输入:999
您无权访问,请稍后再试!
for循环例子2的更多相关文章
- for循环例子1、2、3
/* Name:for循环例子1.2.3 Copyright: By.不懂网络 Author: Yangbin Date:2014年2月12日 02:12:41 Description:该代码用来熟悉 ...
- for循环 例子
<script type="text/javascript"> //循环 for循环 //循环操作某一个功能(执行某段代码) //四要素 1.循环初始值 2.循环条件 ...
- for循环例子
代码 点击查看[ForTest.java]代码 //package com.d; import java.util.Scanner; /** * For循环例子 * @date: 2022.2.24 ...
- C--控制语句循环例子
C的三种循环while.for和do while 先说一下scanf()函数的返回值问题 当scanf("%d,%d",&a,&b);如果用户正确输入了俩个整形变 ...
- 两个for循环例子
var i,j; var a=0; // for(i=0,j=0;i<5,j<7;i++,j++){ // a=i+j; // } // alert(a) //12 for(i=0,j=0 ...
- 21. oracle游标循环例子
事例1: create or replace procedure sp_addProjectQj( ret out number, flowid in number --流程Id) ascursor ...
- sikuli for循环例子
hover("fiE.png")for x in range(99): type('p',KEY_CTRL) wait("HEIHEUULEWW5.png") ...
- vue for 循环例子 2
demo <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf- ...
- Vue for循环 例子
demo <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf- ...
随机推荐
- 《剑指offer》面试题48. 最长不含重复字符的子字符串
问题描述 请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度. 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串 ...
- 实习之bii--配置esxi重启时,虚拟机也跟随重启
由于初创环境不稳定又是服务器会重启,而内部安装的多部虚拟机并不默认跟随启动,需要设置,方法如下: 1.在本地通过vsphere client 登录到esxi的服务器上,然后点击配置找到虚拟机启动/关机 ...
- tarjan全家桶
tarjan 全家桶 关于tarjan 它太强了 CCCOrz dfs树&low dfs树:在图上做不重复经过同一点的dfs,经过的边与点形成一棵树.于是图上所有点都被这棵树包含,一部分边被包 ...
- 使用kubeadm搭建k8s集群
1.初始化集群信息 这里我才用了两台虚拟机来搭建集群,一个master,一个node 角色 IP地址 组件 master 192.168.126.137 docker, kubectl, kubead ...
- [数据结构]伸展树(Splay)
#0.0 写在前面 Splay(伸展树)是较为重要的一种平衡树,理解起来也依旧很容易,但是细节是真的多QnQ,学一次忘一次,还是得用博客加深一下理解( #1.0 Splay! #1.1 基本构架 Sp ...
- Integer缓冲区相关问题--valueOf()方法
今天在学习过程中了解到一个现象,代码如下: Integer num1 = 100; Integer num2 = 100; System.out.println(num1==num2?true:fal ...
- 命令行传参是否只能针对main方法
先上结论 命令行传参只能针对main方法而言,而且格式严格 这里在原有主类test基础上创建了另一个类,名字为testCMD,但里面创建的方法并不是main方法,在cmd内编译后进行命令行传参,结果如 ...
- 《Spring Boot 实战纪实》之过滤器
导航 什么是过滤器 Spring的过滤器 Filter定义 过滤的对象 典型应用 过滤器的使用 Filter生命周期 过滤器链 自定义敏感词过滤器 新增自定义过滤器 添加 @WebFilter注解 添 ...
- 洛谷P5019 [NOIP2018 提高组] 铺设道路
题目描述 春春是一名道路工程师,负责铺设一条长度为 n 的道路. 铺设道路的主要工作是填平下陷的地表.整段道路可以看作是 n 块首尾相连的区域,一开始,第 i 块区域下陷的深度为 di. 春春每天可以 ...
- 短信发送器小案例 smsManager
总结实现步骤 (1)画 mainActivity页面 <LinearLayout xmlns:android="http://schemas.android.com/apk/r ...