运算符和选择结构

运算符

1、算术运算符
例如:+ - * / % ++ –
a++:先取值再+1
++a:先+1再取值
算术表达式的最终类型取决于表达式中的最大类型。

2、关系运算符
顾名思义就是比较大小。
例如:> >= < <= !=
关系表达式最终结果为boolean

3、逻辑运算符
例如:&& || !
&&:逻辑与 二元短路与
|| :逻辑或
!:逻辑非

System.out.println(true && true);
System.out.println(true && false);
System.out.println(false && false);

在这里插入图片描述
所以,当都为true的时候为true,否则为false。

System.out.println(true || true);
System.out.println(true || false);
System.out.println(false || false);

在这里插入图片描述
逻辑或的情况下,只有当都是false的情况下为false,否则为true。

3、赋值运算符
例如: = 从右向左执行

4、三元运算符
xxx val =boolean?V1:V2;
实例在下面。

分支结构

1、单分支

if(条件){代码}

2、双分支

if(条件){代码}else{代码2}

3、多分支

if(条件1){代码1}else(条件2){代码2}....else{代码N}

switch(算术表达式){case 常量1:代码1;break; case 常量2: 代码2; break;......}

if做区间条件,switch做等值条件

case1:case2:case3:case4:....// 贯穿现象
// 只支持long以下的整数(char 枚举)
// JDK1.8以后的版本   String是个特殊

4、嵌套分支

if(){
	if(){}
	switch(){}
}

⭐️多个变量构成复杂条件,建议使用嵌套分支,一层只复杂一个变量构建条件。

例1:

import java.util.Scanner;
import java.text.Messageformat;
public class Case{
	public static void main(String[] args){
	Scanner input = new Scanner(System.in);
	
	System.out.println("请输入成绩:");
	int score = input.nextInt();
	
	if(score>=80){
		System.out.println("好好学习,天天向上");
	}else{
		System.out.println("差生");
	
	}
}

例2:

import java.util.Scanner;
import java.text.MessageFormat;

public class Case{
	public static void main(String[] args){
	Scanner input = new Scanner(system.in);
	
	int score = input.nextInt();
	if(score>=90){
		System.out.println("优秀");
	}else if(score>=80){
		System.out.println("良好");
	}else if(score>=70){
		System.out.println("一般");
	}else if(score>=60){
		System.out.println("及格");
	}
	}
}

例3:

import java.util.Scanner;
import java.text.MessageFormat;

public class Case{
	public static void main(Stringp[] args){
	Scanner input = new Scanner(System.in);
	
	System.out.println("1、余额查询 2、账单查询 3、充值 4、人工服务 5、推出");
	System.out.println("请选择:");
	char choice = input.next().charAt(0);
	
	switch(choice){
		case '1':
		System.out.println("当前余额为1234");
		break;
		case '2':
		System.out.println("本月消费120元");
		break;
		case '3':
		System.out.println("充值50元人民币成功");
		break;
		case '4':
		System.out.println("当前人工克服09号为您服务");
		break;
		case '5':
		System.out.println("退出系统成功");
		break;
		default:
		System.out.println("无此服务,请重新选择");
		
	}
	}
}

例4:

import java.util.Scanner;
import java.text.MessageFormat;

public class Case{
	public static void main(Stringp[] args){
	Scanner input = new Scanner(System.in);

	// 星期 1 3 5 狮子头 打折8块  原价20
	// 星期2 4 6 鸡块  打折10块  原价 30
	// 星期天  地锅鸡   打折16块   原价38
	System.out.println("今天是星期几:");
	char weekDay = input.next()charAt(0);
	
	if(weekDay==1 || weekday==3 || weekDay==5){
		System.out.println("狮子头  ¥8   原价:20");
	}else if(weekDay==2 || weekday==4 || weekDay==6){
		System.out.println("鸡块 ¥10  原价:30");
	}else if(weekDay==7){
		Sysrem.out.println("地锅鸡  ¥16   原价:38");
	}

例5:

import java.util.Scanner;
import java.text.MessageFormat;
// 闰年
public class Case{
	public static void main(Stringp[] args){
	Scanner input = new Scanner(System.in);

	 System.out.println("请输入年份:");
        int year = input.nextInt();
        boolean is = (year%4==0 && year%100!=0) || year%400==0;

        System.out.println(year+(is?"是":"不是")+"闰年");
	

例6:

import java.util.Scanner;
import java.text.MessageFormat;

public class Case{
	public static void main(Stringp[] args){
	Scanner input = new Scanner(System.in);
	
	// 水仙花数 abc a*a*a+b*b*b+c*c*c = abc
	int value = input.nextInt();

        if(value>=100&&value<=999){
            int a,b,c,v=value;
            a = value%10;  // 121 个位
            v/=10;
            b = v%10;  // 十位
            v/=10;
            c = v%10;   // 百位
            boolean is = a*a*a + b*b*b +c*c*c == value;

            System.out.println(value+(is?"是":"不是")+"水仙花数");

例7:

import java.util.Scanner;
import java.text.MessageFormat;

public class Case{
	public static void main(Stringp[] args){
	Scanner input = new Scanner(System.in);
System.out.println("请输入成绩:");
        int score = input.nextInt();

        if(score<=10){
            System.out.println("请输入性别:");
            char gender = input.next().charAt(0);
            if(gender=='男'|| gender=='女'){
                System.out.println("进入"+gender+"组");

            }else{
                System.out.println("性别不符合要求,请重新输入");
            }
        }else {
            System.out.println("成绩不符合要求");
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值