选择流程
3.2.1 if语句
if 语句是用来判定所给定的条件是否满足,根据判定的结果(true 或 false)决定执行给出的两种操作之一。简单的 if 分支结构的语法如下:
在语法中,表达式的值必须是 boolean 类型,而不能是其他类型。也就是说取值范围只有 true 或 false 两种。
语句执行的流程:if 子句内的表达式的值如果为 true,则执行紧跟着的“语句块”。
具体流程如下图所示
示例:
package com.ambow.demo;
public class IfDemo {
public static void main(String[] args) {
/*
* if语句的格式:
* if(条件表达式){//条件表达式的结果为boolean类型
* 要执行的语句块
* //如果条件表达式的结果为true,执行if里的语句块,执行完以后接着往下执行;
* //如果条件表达式结果为false,跳过if语句直接往下执行
* }
*/
int week=6;//变量week表示周几
if(week==1){
System.out.println("今天是周一,要举行升旗仪式");
}
System.out.println("这是if外的语句");
if(week>5){
System.out.println("今天是周末,可以休息啦");
}
System.out.println("这也是if外的语句");
}
}
3.2.2 If-else 语句
if 语句是用来判定所给定的条件是否满足,根据判定的结果(true 或 false)决定执行给出的两种操作之一。if-esle 分支结构的语法如下:
在语法中,表达式的值必须是 boolean 类型,而不能是其他类型。也就是说取值范围只有 true 或 false 两种。
语句执行的流程:if 子句内的表达式的值如果为 true,则执行紧跟着的“语句块 A”,如果表达式的值为 false,则执行 else 子句后面的“语句块 B”,并且 else 子句部分是可以省略的。
具体流程如下图所示:
示例:
package com.ambow.demo;
public class If_elseDemo {
public static void main(String[] args) {
/*
* if_else的格式:
* if(条件表达式){//条件表达式的结果为boolean类型
* if里的语句
* //如果条件表达式的结果为true时,执行if里的语句
* }else{
* else里的语句
* //如果条件表达式的结果为false时,执行else里的语句
* }
*/
int week=2;
if(week<=5){
System.out.println("继续工作");
}else{//week>5
System.out.println("今天周末,终于可以休息啦");
}
/*比较两个数中的最大值,然后输出*/
int a=34,b=12,max;//变量max表示最大值
if(a>b){
max=a;
System.out.println(a+","+b+"两个数中的最大值为:"+max);
}else{//a<=b
max=b;
System.out.println(a+","+b+"两个数中的最大值为:"+max);
}
}
}
3.2.3 scanner类补充
java.util.Scanner是Java5的新特征,主要功能是简化文本扫描。我们只要知道这个类最实用的地方表现在获取控制台输入就可以了。
示例:
package com.ambow.demo;
/**
* java.lang包下的所有类,系统默认为我们自动全部导入;不属于java.lang包下的类,需要我们手动导入
* Scanner类属于java.util包,所以需要我们手动导入
* 使用import关键字导包
* @author sqs
*/
import java.util.Scanner;
public class ScannerDemo {
public static void main(String[] args) {
//实例化Scanner类,也就是将Scanner类实例化出一个对象sc
Scanner sc=new Scanner(System.in);
//接收控制台上输入的字符串,并将其赋值给String类型的变量str
String str=sc.nextLine();
System.out.println(str);
//接收控制台上输入的整型数字,并将其赋值给int类型的变量i;
int i=sc.nextInt();
System.out.println("i="+i);
}
}