Java循环语句

Java循环语句Java基础:循环语句,利用随机数实现验证码

大家好,又见面了,我是你们的朋友全栈君。

循环语句:

作用:重复执行一段代码

while语句:

语法:
            while(条件表达式 ){

                当条件表达式为true时,执行此处代码
                再次判断条件表达式是否为true,继续执行此处代码
                直到条件表达式为false结束循环
            }

练习:
            打印小明跑10圈
答案:

public class Demo01 {
	public static void main(String[] args) {
		int num = 0;
		while (num < 10) {
		    System.out.println("小明跑了"+(++num)+"圈");
		}
	}
}

do while语句:

语法:
            do{

                重复执行的代码
                先执行此处代码,再判断条件表达式
                如果条件表达式为true,继续执行此处代码
                如果条件表达式为false,结束循环
            }while(条件表达式);
练习:
            打印小白跑10圈
答案:

public class Demo03 {
	public static void main(String[] args) {
		int num = 0;
		do {
			num++;
			System.out.println("小白跑了"+num+"圈!");
		} while (num < 10);
	}
}

do while和while的区别:
        do while:先执行,再判断,所以至少执行一次
        while:先判断,再执行,可以不执行

for语句:

语法:
            for(表达式1;条件表达式2;表达式3){

                代码块4
            }
            表达式1:初始化变量
            表达式2:判断条件
            表达式3:改变变量
            代码块4:重复执行的代码
执行流程:
            
表达式1——条件表达式2——代码块4——表达式3——条件表达式2——代码块4——表达式3…….——条件表达式2
案列:
            打印10~0
分析:
            for(int i = 10; i >= 0; i–){

                System.out.println(i);
            }
答案:

public class Demo04 {
	public static void main(String[] args) {
		//打印10、9、8、7、6、5、4、3、2、1、0
		for (int i = 10; i >= 0; i--) {
			System.out.println(i);
		}
	}
}

循环嵌套:

案例1、
public class Demo08 {
	public static void main(String[] args) {
		/*
		*    打印
		*     * * * *
		*     * * * *
		*     * * * *
		*     * * * *
		*/
		for (int i = 0; i < 4; i++) {
		    for (int j = 0; j < 4; j++) {
			    System.out.print("* ");
		    }
		    System.out.println();
		}
	}
}
案列二、
public class Demo09 {
    public static void main(String[] args) {
		/*
		* 打印
		*     * 
		*     * *
		*     * * *
		*     * * * *
		*     * * * * *
		*/
		for (int i = 0; i < 5; i++) {
			for (int j = 0; j <= i; j++) {
				System.out.print("* ");
			}
		    System.out.println();
		}
	}
}
案例三、
		九九乘法表:
public class Demo05 {
	// mian方法 程序入口
	public static void main(String[] args) {
	//外层循环 1-9 *号后的数 每行+1
		for (int i = 1; i < 10; i++) {
			// 内层循环 1-9 *号前的数 每行从1+起
			for (int j = 1; j <= i; j++) {
				System.out.print(j + "*" + i +"=" + (i*j) + "\t");
			    // 如果i=j  1*1 2*2 3*3 换行
				if (i==j) {
				System.out.println("\n");
			    }
			}
		}
    }
}

流程控制:

continue:
            跳过本次循环
break:
            跳出本次循环
注意:指定位置跳出或跳过

案列一、
public class Demo10 {
    public static void main(String[] args) {
		for (int i = 0; i < 10; i++) {
			//利用continue跳过5
			if (i == 5) {
				continue;
			}
			System.out.print(i);
		}
					System.out.println();
		for (int j = 0; j < 10; j++) {
			//利用break跳出5
			if (j == 5) {
				break;
			}
			System.out.print(j);
		}
	}
}

其他:
        标识符:自己起的,如变量名、类名等等
        关键字:Java系统赋予特殊含义的单词
        保留字:Java系统没有赋予特殊含义的关键字
随机数:
        作用:随机生成一个数字
        使用:
                    1、导入random包
                    2、创建对象
                    3、获取随机数

案列一、生成六位数验证码
import java.util.Random;
public class Demo11 {
	public static void main(String[] args) {
		Random random = new Random();
		String code = "";
	    for (int i = 0; i < 6; i++) {
			int num = random.nextInt(3);
			if (num == 0) {
				int x = random.nextInt(26)+65;
				char c = (char)x;
				code += c;
			}
			if (num == 1) {
				int x = random.nextInt(26)+97;
				char c = (char)x;
				code += c;
			}
			if (num == 2) {
				int x = random.nextInt(10);
				code += x;
			}
		}
		System.out.println("验证码:"+code);
	}
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156480.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • netty权威指南学习

    netty权威指南学习1、Bio工程结构maven工程文件结构:│nettyArticle.iml│pom.xml│├─.idea│compiler.xml│misc.xml│vcs.xml│workspace.xml│├─src│├─main││├─java│││└─com│││└─jad…

    2022年10月2日
    0
  • decltype函数_decltype有什么用

    decltype函数_decltype有什么用前言如果想要知道一个表达式的数据类型但又不想对表达式进行求值,那么auto似乎就不满足这中要求,c++11加入了decltype操作符,它的功能与auto类似,都是进行类型推导,但是decltype就能对某一表达式的类型进行推导并且不求表达式的值.因为decltype在很多的时候并不同于auto操作符,所以我会将大部分的不同罗列出来,比如:数组,顶层const等.declt…

    2022年9月8日
    1
  • SQL中字符串截取函数(SUBSTRING)

    SQL中字符串截取函数(SUBSTRING)1、left(name,4)截取左边的4个字符列:SELECTLEFT(201809,4)年结果:20182、right(name,2)截取右边的2个字符SELECTRIGHT(201809,2)月份结果:093、SUBSTRING(name,5,3)截取name这个字段从第五个字符开始只截取之后的3个字符SELECTSUBSTRING(‘成都融资事…

    2022年5月24日
    82
  • linux制作img镜像文件_linux用命令打开浏览器

    linux制作img镜像文件_linux用命令打开浏览器linuxrootfs.img的制作cramfs是只读压缩的文件系统,文件系统类型可以是ext2,ext3,什么的, cramfs和romfs只是一个文件系统类型,ramdisk相当于一块硬盘空间,可以理解为在内存中虚拟出一块硬盘来,所以它上面就可以有你linux支持的各种文件系统什么的。所以你问的,它和romfs和cramfs确实不是一个层次的概念。^-^恭喜你,你答

    2022年9月27日
    1
  • 怎么安装pandas库_python第三方库pandas

    怎么安装pandas库_python第三方库pandas问题现象:PyCharm中运行程序,报错,提示“ModuleNotFoundError:Nomodulenamed’pandas’”第一种方法:1.电脑WIN+R,输入cmd,输入pipinstallpandas,等待下载完成即可。2.如果有以下提示,说明pip的版本可能不一致,需要解决冲突。想更新pip,输入pipinstall–upgradepip,报错,提示“Nomodulenamedpip”3.解决方法,输入python-mensu

    2022年8月29日
    1
  • AndroidStudio入门基础(一)——基础布局

    AndroidStudio入门基础(一)——基础布局写在前面:上学期学习了Android,从一开始的什么都不懂到后来成功做出一个课程设计作品,回忆起来一路还是充满坎坷和辛酸泪的啊。遗忘是可怕的,为了防止以后把好不容易学到的东西忘得一干二净,我打算写一系列的AndroidStudio教程记录一些有用的知识点,当然,我会从最基础的地方写起,希望可以帮助到一些初学者~最后,如果时间和精力允许的情况下,我会一步步的还原我的课程设计,喵喵喵~(…

    2022年6月11日
    48

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号