回顾程序流程控制一般分为三种:顺序结构、分支结构、循环结构
顺序结构:从main方法开始自上而下执行
分支结构:if、switch,根据条件判断true/false,选择性执行代码
循环结构:for、while、do...while控制某段代码重复执行
循环结构
for循环
for(初始化语句; 循环条件; 迭代语句) {
循环体语句
}
while循环
初始化语句①;
while(条件判断语句②){
循环体③;
迭代语句④;
}
do...while循环
初始化语句①;
do{
循环体②;
迭代语句③;
}while(条件表达式④);
for、while、do...while循环区别
for循环 和 while循环(先判断后执行);
do...while (先执行后判断)
如果已知循环次数建议使用for循环,如果不清楚建议使用while循环。
for循环中控制循环的变量只在循环中使用
while循环中,控制循环的变量在循环后还可以继续使用
程序死锁、死循环,死循环是永真循环
for形式标准死循环:for(;;){sout("");}
while形式标准死循环:while(true){}
do...while形式标准死循环:do{}while(true);
循环嵌套:循环中又包含循环
特点:外循环每循环一次,内循环会全部执行完一轮
需求:实现等腰三角形案例
System.out.println("--------三角形--------");
for (int x=1; x<=5;x++ ){
for (int y=x;y<5 ;y++ ){
System.out.print(" ");
}
for (int z=1; z<=x;z++ ){
System.out.print("* ");
}
System.out.println();
}
需求:实现菱形
public static void main(String[] args) {
/*Scanner sc=new Scanner(System.in);
System.out.println("请输入奇数:");
int number=sc.nextInt();
start1(number);*/
}
private static void start1(int num){
for (int i = 1; i <= num; i++) {
for (int j = 1; j <= num-i; j++) {
System.out.print(" ");
}
for (int j = 0; j < 2 * i - 1; j++) {
System.out.print("*");
}
System.out.println();
}
for (int i = 1; i <= num-1; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(" ");
}
for (int j = 1; j <= 2 * (num - 1 - i)+1; j++) {
System.out.print("*");
}
System.out.println();
}
}
break:跳出并结束当前所在循环
continue:跳过本次循环,继续执行下一次循环
实现循环控制使用break、continue
随机数random技术使用步骤:
导包 import java.util.Random;
创建Random对象 Random r=new Random();
调用方法获取随机数 int i=r.nextInt(100);-包前不包后(0-99)
想要实现1-100,可以int i=r.nextInt(100)+1;
猜数字实现:
创建产生随机数的Random类的对象
产生区间内的随机数,保存为int类型变量,以供猜测
创建键盘录入Scanner类对象
用户猜对次数不确定,so这里用while循环
循环内部,获取用户猜测数,并保存变量
循环内部,对用户猜测数和随机数进行比较,并对其进行提示,如果等于,跳出结束while循环