顺序结构,选择结构(if判断)
顺序结构
任何Java代码都是根据顺序执行代码,例
public class ProjectDemo_09 {
public static void main(String[] args) {
System.out.println("hello world1");
System.out.println("hello world2");
System.out.println("hello world3");
System.out.println("hello world4");
System.out.println("hello world5");
}
}
如上,只要没有什么特殊的判断,语句会重上往下按照顺序执行
选择结构
if语句
if(条件){
执行结果
}
if 单选结构:
例1:执行一个判断语句,当输入几个数字的时候来做判断,如果小于60属于不及格,如果大于等于60属于及格?
import java.util.Scanner;
public class ProjectDemo_09 {
public static void main(String[] args) {
//执行一个判断语句,当输入几个数字的时候来做判断,如果小于60属于不及格,如果大于等于60属于及格
Scanner scanner=new Scanner(System.in);
System.out.println("请输入分数!");
double d=scanner.nextDouble();
if (0<=d<60&&60<=d<=100){
System.out.println("不及格");
}else{
System.out.println("及格");
}
scanner.close();
}
if 多选结构
例2:实现当输入一个数字的时候,加上相关的判断,小于60不及格,如果60到70及格,7到85良好,85以上为优秀?
import java.util.Random;
import java.util.Scanner;
public class ProjectDemo_01 {
public static void main(String[] args) {
//实现当输入一个数字的时候,加上相关的判断,小于60不及格,如果60到70及格,7到85良好,85以上为优秀
//1.先定义一个输入的数字,并且实现输入
Scanner scanner=new Scanner(System.in);
System.out.println("请输入数字?");
Double d=scanner.nextDouble();
System.out.println(d);
//2.判断分数打印结果
if (d<60){
System.out.println("分数为:"+d+";所以此次成绩不合格");
}else if (60<=d&&d<70){
System.out.println("分数为:"+d+";所以此次成绩及格");
}else if (d<=70&&d<85){
System.out.println("分数为:"+d+";所以此次成绩良好");
}else if (85<=d&&d<=100){
System.out.println("分数为:"+d+";所以此次成绩优秀");
}else {
System.out.println("输入错误请重新输入!");
Random r=new Random();
System.out.println("在1到100里面随机取出一位随机数?");
System.out.println(r.nextInt(100));
System.out.println("在100以内默认随机10个数字?");
//在100以内的数字里面默认选择10个随机数
int i=1;
for (i=1;i<10;i++) {
int rd = r.nextInt(100);
System.out.println(rd);
}
}
//3.结束输入
scanner.close();
}
}
嵌套if
例3:嵌套if就是在判断语句里面加判断,使其判断的语句变得更加的精确细化。嵌套if实现一个手动输入的1—100的数字,判断奇数的数字,并且判断奇数里面能不能够被3整除,如果能,就答应出被整除的结果,如果不能那么就只打印出奇数显示?
package com.miracle.workone;
import java.util.Scanner;
public class ProjectDemo_10 {
public static void main(String[] args) {
//实现一个手动输入的1—100的数字,判断奇数的数字,并且判断奇数里面能不能够被3整除,
// 如果能,就答应出被整除的结果,如果不能那么就只打印出奇数显示?
//1、设置一个输入的数据
Scanner scanner=new Scanner(System.in);
System.out.println("请输入1——100的数字");
double num=scanner.nextDouble();
//2、判断数据是不是奇数
if(num%2==0&&num<100&&0<num){
System.out.println("当前输入的数字是偶数:"+num);
}else if (num%2!=0&&num<100&&0<num){
if (num%3==0){
//3、算出奇数能被3整除的结果
System.out.println("当前奇数能够被3整除,整除结果为:"+(num/3));
}else {
System.out.println("当前数字是奇数且不能够被3整除:"+num);
}
}else {
System.out.println("输入错误,请输入正确的1——100的数字");
}
//4、close输入的数据
scanner.close();
}
}
switch选择结构
switch、case、default、break 都是 Java 的关键字。
switch(表达式) {
case 值1:
语句块1;
break;
···
case 值N:
语句块N;
break;
default :
语句块N+1(相当于else);
break;
}
package com.miracle.workone;
import java.util.Scanner;
public class ProjectDemo_11 {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
System.out.println("请输入评定等级A,B,C!");
String str=scanner.nextLine();
switch (str){
case "A":
System.out.println("优等");
break;
case "B":
System.out.println("中等");
break;
case "C":
System.out.println("差等");
break;
default:
System.out.println("输入等级错误;请输入(A)(B)(C)");
break;
}
}
}
break是为了防止case穿透,也就是说,如果不用break的话,case他会一直继续的执行。