java(2):if、switch、for、while、break、continue

本文介绍了Java编程中的分支结构(if和switch)、各种循环结构(for、while、do-while、死循环和嵌套循环),以及break和continue的关键字用法,通过实例演示了如何在实际项目中运用这些控制结构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

2.1 分支结构

2.1.1 if

 2.1.2 switch分支

2.2 循环结构

2.2.1 for 循环

2.2.2 While 循环

2.2.3 do-while 循环

2.2.4 死循环(不干预不停,用于服务器程序)

2.2.5 嵌套循环

 2.3 跳转关键字break、continue


2.1 分支结构

2.1.1 if

代码格式:

注意:if(条件){},()后不能跟“;”否则{}中的代码将不受if的控制了。

案例1:键盘录入考试成绩,根据成绩所在的区间,程序打印出不同的奖励机制

package four;
import java.util.Scanner;

public class divnumber {	
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入分数:");
		int grade = sc.nextInt();
		if (grade>80) {
			System.out.println("优");
		}else if (grade>=60 && grade<=80) {System.out.println("良");}
		else {System.out.println("差");}				
	}
}

案例2:密码校验

package four;
import java.util.Scanner;
public class divnumber {	
public static void main(String[] args) {
	while (true) {
	Scanner sc = new Scanner(System.in);
	System.out.println("请输入用户密码:");
	int mima = sc.nextInt();
	
	if (mima==11111) {
		System.out.println("登陆成功");
		break;
	}
	else {System.out.println("登陆失败请重新输入!");}				
}
}
}

结果:

 2.1.2 switch分支

是通过比较值来决定执行那条分支

1、先执行表达式的值,再拿着这个值去与case后的值进行匹配。

2、与哪个case后的值匹配为true就执行哪个case块的代码,遇到break就跳出switch分支。

3、 如果全部case后的值与之匹配都是false,则执行default块的代码。

注意:if常用于区间比较,而switch常用于单值比较

import java.util.Scanner;
 
 
public class demo3 {
	public static void main(String[] args){
		
		System.out.println("你最喜欢吃的水果是哪个?");   //输出语句
		System.out.println("A.橙子");   //输出语句
		System.out.println("B.苹果");   //输出语句
		System.out.println("C.香蕉");   //输出语句
		System.out.println("D.桃子");   //输出语句
		
		Scanner sc = new Scanner(System.in);   //创建Scanner对象
		
		System.out.println("请输入你的选择:");   //输出语句
		
		String choice= sc.nextLine();   //调用输入字符串的方法,获取键盘输入值
 
//switch语句
		switch(choice){
		  case "A":
			  System.out.println("你的选择是橙子");
			  break;
		  case "B":
			  System.out.println("你的选择是苹果");
			  break;
		  case "C":
			  System.out.println("你的选择是香蕉");
			  break;
		  case "D":
			  System.out.println("你的选择是桃子");
			  break;
		  default:
		      System.out.println("请输入正确的选项!");
		      break;
		
		}

注意:若表达式是String类型,case后面的值要用双引号" ";

          若表达式是char类型,case后面的值用单引号' '。!!

2.2 循环结构

2.2.1 for 循环

循环格式:

for (初始化语句; 循环条件; 迭代语句)

{     循环体语句(重复执行的代码); }

循环顺序:

执行流程:

执行的流程:

1、循环一开始,执行int i = 0 一次。

2、此时  i=0 ,接着计算机执行循环条件语句:0 < 3 返回true , 计算机就进到循环体中执行,输出 :helloWorld ,然后执行迭代语句i++。

3、此时  i=1 ,接着计算机执行循环条件语句:1 < 3 返回true , 计算机就进到循环体中执行,输出 :helloWorld ,然后执行迭代语句i++。

4、此时  i=2 ,接着计算机执行循环条件语句:2 < 3 返回true , 计算机就进到循环体中执行,输出 :helloWorld ,然后执行迭代语句i++。

5、此时  i=3 ,然后判断循环条件:3 < 3 返回false, 循环立即结束!!

判断成功就进循环

案例1: 批量生产数据

package four;

public class number {

	public static void main(String[] args) {
		for (int i=1;i<=100;i++) { //一定要注意循环条件,不要漏了!
			System.out.println(i);			
		}
		// TODO Auto-generated method stub
	}

}

案例2: 求和

//求1-5之间的数据和,并把求和结果在控制台输出。
package four;

public class number {

	public static void main(String[] args) {
		int sum = 0;
		for (int i=1; i<=5;i++) {
			sum = sum+i;
			
		}
		System.out.println(sum);
	}

}

案例3:求奇数和

package four;

public class number {

	public static void main(String[] args) {
		int sum = 0;
		int i ;
		for (i=1;i<=10;i++) {
			if (i%2==1 ) {sum=sum+i; }
		}			
	System.out.println(sum);
	}
}

案例4:水仙花数

需求:在控制台输出所有的“水仙花数”,水仙花数必须满足如下2个要求:

水仙花数是一个三位数  水仙花数的个位、十位、百位的数字立方和等于原数

package four;

public class number {

	public static void main(String[] args) {
		int i;
		for (i=100;i<=999;i++) {
			int m_3 = 0; //第三位数
			m_3 = i/100;
			int m_2 = (i/10)%10;
			int m_1 = i%10;
			if (m_1*m_1*m_1+m_2*m_2*m_2 +m_3*m_3*m_3 == i) {
				System.out.println(i);
			}
//				else {System.out.println("匹配失败");}
					
		}
			
	}
}

2.2.2 While 循环

执行语句:

初始化语句; while (循环条件)

{     循环体语句(被重复执行的代码);    

迭代语句; }

注意:顺序执行。知道循环几次:使用for;不知道循环几次建议使用:while。

案例1:纸张折叠成珠穆朗玛峰的高度

世界最高山峰珠穆朗玛峰高度是:8848.86米=8848860毫米,假如我有一张足够大的纸,它的厚度是0.1毫米。请问:该纸张折叠多少次,可以折成珠穆朗玛峰的高度?

package four;

public class number {

	public static void main(String[] args) {
		double high = 8848860;
		double count = 0;
		double sump = 0.1;		
		while(sump<8848860) {
			count++;
			sump = sump*2;
		}
		System.out.println("用"+count+"次可以叠成珠穆朗玛峰的高度");
			
	}
}

2.2.3 do-while 循环

执行语句:

初始化语句;

do {     循环体语句;    

迭代语句; } while (循环条件);

特点:先执行后判断。

案例1:输出3遍HelloWorld

package four;

public class number {

	public static void main(String[] args) {
		int i=0;
		do{
			System.out.println("HelloWorld");
			i++;	
	}while(i<3);
		}}

注:在for 循环中同样是输出三次Helloworld 但是判断条件是i<=3

2.2.4 死循环(不干预不停,用于服务器程序)

2.2.5 嵌套循环

package four;

public class number {

	public static void main(String[] args) {
		for (int i =0;i<2;i++) {
			for (int j =0 ;j <5;j++) {
				System.out.println("我爱你");
			}
		}
		
	}}

 2.3 跳转关键字break、continue

break、continue

break   :  跳出并结束当前所在循环的执行。

continue:  用于跳出当前循环的当次执行,直接进入循环的下一次执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值