这是Java的 流程控制,操控“一切”

本文主要介绍编程中的流程控制,包括if - else、多重if、if嵌套、switch - case等语法,阐述了它们的基本用法、适用场景和注意事项。还讲解了循环的概念,如while、do - while、for循环,强调循环四要素缺一不可,最后对进阶的switch case用法进行说明。

流程控制

  • if-else

if-else 是一个基本的流程控制语法,用于判断某个条件是否成立,然后执行不同的业务逻辑,基本语法:

if(判断条件){
  //条件成立的业务逻辑
}else{
  //条件不成立的业务逻辑
}

运算符优先级顺序: ! > 算术运算符 > 关系运算符 > && > | | 。

  • 多重if

173 以下M,173~178 L,178 以上 XL

if-else 的使用比较灵活,可以根据不同的情况选择不同的组合方式,需要注意的是:

  • if 后面必须跟条件

  • eles 后面不能跟条件

  • eles 后面可以直接跟{//逻辑代码},也可以跟if语句。

  • if 嵌套

成绩大于80分可以进入决赛,根据年龄分别进入A组(20岁以上),B(18~19岁)

  • switch-case

switch-case 也可以完成流程控制,与 if 不同的是,switch-case 只能完成等值判断,即条件如果是判断两个值是否相等,可以使用 switch-case ,如果是比较两个值的大小关系,则不能使用 switch-case ,switch 支持 int、short、byte、char、枚举、String 类型数据的判断,不支持 boolean 类型。

基本语法:

switch(变量){
  case1:
    代码1
   break;
  case2:
    代码2
   break;
    ......
	default:
    代码n;
   break;
}

if - else

if(变量 ==1){
  代码1
}else if(变量 ==2){
  代码2
}
......
else{
  代码n
}

case 判断 switch 后面的变量是否等于某个值,default 表示所有的 case 都不成立的情况下所执行的代码。

每一个 case 语句必须要跟 break,表示结束当前的代码块,如果不跟 break,则从当前的 case 语句起,后续所有的 case 都不再进行判断,直接执行相关代码。

循环

当循环条件成立时,会重复执行循环体中的代码,直到循环条件不成立,我们应该在循环体中动态控制循环条件是否成立,编写循环逻辑时,需要额外添加控制循环条件的代码,这些代码组成了循环四要素

  • 初始化循环变量;
  • 循环条件;
  • 循环体;
  • 更新循环变量;
    在这里插入图片描述
while循环

在这里插入图片描述

do — while循环

在这里插入图片描述

for循环

在这里插入图片描述
任何一种形式的循环代码,四要素缺一不可。

流程控制实例

进阶-----switch case

switch(A),括号中A的取值只能是整型或者可以转换为整型的数值类型,比如byte、short、int、char、还有枚举;需要强调的是:long和String类型是不能作用在switch语句上的。

case B:C;case是常量表达式,也就是说B的取值只能是常量(需要定义一个final型的常量,后面会详细介绍原因)或者int、byte、short、char(比如1、2、3、200000000000(注意了这是整型)),如果你需要在此处写一个表达式或者变量,那么就要加上单引号; case后的语句可以不用大括号,就是C不需要用大括号包裹着;

default就是如果没有符合的case就执行它,default并不是必须的.

选用枚举类型可以进行选择字符串
public enum Color {
	RED("red color", 0), 
	GREEN("green color", 1),
	BLUE("blue color", 2), 
	YELLOW("yellow color", 3);
 
	Color(String name, int id) {
		_name = name;
		_id = id;
	}
 
	private String _name;
	private int _id;
 
	public String getName() {
		return _name;
	}
 
	public int getId() {
		return _id;
	}
 
	public static Color getColor(int max) {
		Random random = new Random(System.currentTimeMillis());
		int num = random.nextInt(max);
		switch (num) {
		case 0:
			return Color.RED;
		case 1:
			return Color.GREEN;
		case 2:
			return Color.BLUE;
		case 3:
			return Color.YELLOW;
		default:
			return Color.BLUE;
		}
	}
	
	public static void main(String[] args) {
		int len = Color.values().length;
		Color color = Color.getColor(len);
		switch (color) {
		case RED:
			System.out.println("select " + RED._name);
			break;
		case GREEN:
			System.out.println("select " + GREEN._name);
			break;
		case BLUE:
			System.out.println("select " + BLUE._name);
			break;
		case YELLOW:
			System.out.println("select " + YELLOW._name);
			break;
		default:
			System.out.println("select " + "unknow!!");
			break;
		}
	}
}

返回目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值