初学JAVA已有几日,睡眠质量反而提高许多。
今天开始学习if分支,依然是老师不断挖坑,我也是铁头的往下跳,当你真正认真学的时候才发现,身旁的人是个个都比你牛b,自己加油干吧! 奥力给!!!
笔记
### 分支结构
#### 1.代码运行过程中的常见结构
顺序结构
代码从上到下,从左至右执行,最基本原则。
分支结构
路上的风景不一样,向左走向右走结果不一样。
代码满足不同的条件,执行不同的结果
循环结构
代码中存在需要多次执行的情况,这里会使用到循环结构
#### 2.分支结构
##### 2.1 if分支结构
```java
if (/*条件判断*/){
//语句体
}
/*
执行流程:
当前程序运行到if结构时,首先执行条件判断,雕件判断的结果是一个boolean类型,条件判断的结果是boolean类型,如果条件判断为true,执行语句体,为false,不能执行语句体。
最后都会执行到大括号之外
*/
class Dome2{
public static void main(String[]args){
//假设你兜里有10快钱
int money = 10;
if (money > 5) {
System.out.println("煎饼果子");
money -= 5;
}
System.out.println(money);
}
}
/*
1.判断一个字符是不是大写英文字母
*/
class Dome3{
public static void main(String[]args){
//假设你兜里有10快钱
char ch = 'a';
if (ch >= 'A' && ch <= 'Z') {
System.out.println("字母");
} else
System.out.println("其他");
}
}
/*
2.判断一个字符是不是英文字符
*/
class Dome4{
public static void main(String[]args){
//假设你兜里有10快钱
char ch = '9';
if ((ch >= 'A' && ch <= 'Z') || (ch >= 'a' && ch <='z')) {
System.out.println("字母");
} else
System.out.println("其他");
}
}
/*
3.判断一个年份是不是闰年
能被4整除但是不能被100整除,或者能被400整除。
*/
class Dome5{
public static void main(String[]args){
//假设你兜里有10快钱
int year = 2008;
if ((year % 4 ==0 && year % 100 !=0) || year % 400 == 0) {
System.out.println("闰年");
} else
System.out.println("其他");
}
}
2.2 if else 分支结构
/*
if 分支结构中只能处理条件满足的情况,条件不满足没有任何的处理语句。
if else分支结构、
*/
if (){
//true语句体
} else {
//false语句体
}
/*
执行流程:
代码执行都爱if else结构运行,首先判断if之后的条件判断,如果条件判断true,执行true语句体,如果田间判断为false,执行false语句体。
时间上最遥远的距离是你在if里,我在else里。
*/
/*
1.工资判断
月收入5000以上缴税
月收入5000以下不需要缴税
*/
class Dome6{
public static void main(String[]args){
// 工资是一个浮点类型数据,这里使用double
double salary = 10000;
if (salary > 5000) {
System.out.println("我为国家做贡献");
} else {
System.out.println("我会继续努力,为国家做贡献");
}
}
}
/*
2.是否有女友
*/
class Dome7{
public static void main(String[]args){
boolean haiGirlFriend = true;
if (haiGirlFriend){
System.out.println("买奶茶送一");
}else{
System.out.println("买奶茶不送");
}
}
}
/*
3.判断一个字符是不是数字字符
*/
class Dome8{
public static void main(String[]args){
char ch = '1';
if(ch >= '0' && ch <= '9'){
System.out.println("shi");
} else {
System.out.println("bushi");
}
}
}
2.3 if else if 分支结构
学生成绩的等级划分:
90~100秀儿
80~90良儿
70~80中儿
60~70格儿
60以下 让你爹穿拖鞋来学校一趟
class Dome9{
public static void main(String[]args){
// 用户的消费数量按照int类型考虑
int money = 100000;
if (money >= 100 && money <= 1000){
System.out.println("铜牌会员");
}else if (money >= 1000 && money <= 5000){
System.out.println("银牌会员");
}else if (money > 5000 && money <= 10000){
System.out.println("金牌会员");
}else if (money > 10000 && money <= 50000){
System.out.println("钻石会员");
}else if (money > 50000){
System.out.println("黑钻会员");
}
}
}
【补充只是点 Scanner 复制粘贴就可以了】
以上代码每一次的结果都是需要用户修改代码,保存,重新编译之后才可以进行执行结果。对于普通用户而言,该操作可以行吗?
我们需要给程序提供一种方式用于接受用户输入数据!!
Sanner是Java中提供的用于从控制台输入数据代码中的一种方式,存在一些弊端,容易导致一些错误,这里之要求大家了解一些必要的方法。
Scanner操作 哪里需要粘哪里
Scanner使用流程
1.点技能点,Java程序本身是没有直接使用Scanner的能力,这里需要点技能点。
官方操作[导包]
import java.util.Scanner;
放在class代码上一行
2.需要得到一个Scanner的变量
固定格式:
Scanner sc = new Scanner(System.in);
3.选择执行对应的方法,从键盘上获取对应的数据
获取int类型
int类型的变量 = sc.nextInt();
获取int类型
float类型的变量 = sc.nextFloat();
获取int类型
double类型的变量 = sc.nextDouble();
获取int类型
char类型的变量 = sc.nextLIne().charAt(0);
【补充知识点 用户友好型提示】
代码运行需要站着用户的角度思考问题。需要用户进行操作时,需要给于用户足够的提示和引导,告知用户当前操作如何完成,考虑代码的友好性!!!
用户粘性问题!!! 用户提示!!!用户友好性!!!
【补充知识点 用户输入数据合法判断】
就算在提示中告知用户需要输入的数据范围是多少,但是用户在实际使用的过程过程中,依旧存在输入错误的情况。需要对于用户输入的数据合法性判断,如果用户输入的内容符合我们的判断逻辑需求,进入数据处理过程。如果不符合要求,直接终止程序!!!
import java.util.Scanner;
class Dome10{
public static void main(String[]args){
float score = 0.0F;
Scanner sc = new Scanner(System.in);
System.out.println("请输入学生成绩 1~100:");
score = sc.nextFloat();
if(score > 100 || score < 0){
System.out.println("输入数据不合法!!!");
System.exit(0);
}
if(score >= 90 && score <= 100){
System.out.println("秀儿");
} else if (score >= 80){
System.out.println("良儿");
} else if (score >= 70){
System.out.println("中儿");
} else if (score >= 60){
System.out.println("格儿");
} else {
System.out.println("让你爹穿拖鞋来学校一趟");
}
}
}
3.总结
分支结构用于处理代码中出现的一些需要判断,并且按条件处理的情况!!!
1.条件约束考虑清楚
2.处理的过程考虑清楚
3.数据类型的选择