顺序结构
定义:按照代码的顺序从上至下一次执行。程序在执行时默认的按照顺序结构执行。
选择结构
if
1. if语句
程序流程图:
语法:
if(条件){ 执行语句; }
2. if-else 结构
程序流程图:
语法:
if(条件){ 执行语句1; }else{ 执行语句2; }
实例
// Scan+Alt键+?键 自动生成 import java.util.Scanner; 工具包 import java.util.Scanner; public class Exam1 { public static void main(String[] args) { //在系统中定义一个用于键盘输入的input对象,定义好了以后,input能够完成键盘的输入功能。 Scanner input = new Scanner(System.in); //声明变量,用于后续保存通过键盘输入员工工号 String work_id; //声明变量,用于后续保存通过键盘输入密码 String password; System.out.println(">>>阿拉福收银管理系统"); System.out.println("请输入管理员工号:"); //通过input找到文字输入的功能,将输入的内容存到变量中 work_id = input.next(); System.out.println("请输入管理员密码:"); //通过input找到文字输入的功能,将输入的内容存到变量中 password = input.next(); //if---else选择结构,判断条件 //字符串判断是否相等时使用equals()。 if(work_id.equals("A9901")&&password.equals("123456") ){ System.out.println("登录成功!"); }else{ System.out.println("用户名或密码错误!"); } System.out.println("程序结束!"); } }
3. if-else if-else 结构
程序流程图:
语法:
if(条件1){ 执行语句1; }else if(条件2){ 执行语句2; }else{ 执行语句3; }
实例
import java.util.Scanner; public class Exam1 { public static void main(String[] args) { //在系统中定义一个用于键盘输入的input对象,定义好了以后,input能够完成键盘的输入功能。 Scanner input = new Scanner(System.in); //声明变量,用于后续保存通过键盘输入员工工号 String work_id; //声明变量,用于后续保存通过键盘输入密码 String password; System.out.println(">>>阿拉福收银管理系统"); System.out.println("请输入管理员工号:"); //通过input找到文字输入的功能,将输入的内容存到变量中 work_id = input.next(); System.out.println("请输入管理员密码:"); //通过input找到文字输入的功能,将输入的内容存到变量中 password = input.next(); //if---else if---else选择结构 if(!work_id.equals("A9901")){ System.out.println("登录失败,员工工号输入错误"); }else if(!password.equals("123456")){ System.out.println("登录失败,密码错误"); }else{ System.out.println("登录成功!"); } System.out.println("程序结束!"); } }
switch
程序流程图:
语法:
switch(表达式){ case 标量1: 执行语句1; break; case 标量2: 执行语句2; break; case 标量n: 执行语句n; break; default: 执行其他语句; }
说明
1、 表达式的类型只能为byte、short、char和int这4种之一。
2、 标量1、标量2…标量n只能为常数或常量,不能为变量。
3、 功能代码部分可以写任意多句。
4、 break关键字的意思是中断,指结束switch语句,break语句为可选。
5、 case语句可以有任意多句,是标号语句。
6、 default语句可以写在switch语句中的任意位置,功能类似于if语句中的else。
执行流程:当表达式的值和对应case语句后的值相同时,既从该位置开始向下执行,一直执行到switch语句的结束,在执行中,如果遇到break语句,则结束switch语句的执行。
实例
import java.util.Scanner; public class Exam5 { public static void main(String[] args) { Scanner input = new Scanner(System.in); int item; System.out.println("---------欢迎进入在线购物系统---------"); System.out.println("=========功能选项========="); System.out.println("1.登录"); System.out.println("2.注册"); System.out.println("3.商品列表"); System.out.println("4.商品分类"); System.out.println("5.退出系统"); System.out.println("请输入选项号:"); item = input.nextInt(); switch(item){ case 1: System.out.println("------进入登录系统------"); break; case 2: System.out.println("------进入注册系统------"); break; case 3: System.out.println("------进入商品列表------"); break; case 4: System.out.println("------进入商品分类------"); break; default: System.out.println("------退出系统------"); } } }
循环结构
while
程序流程图:
语法:
while(条件){ 循环体; }
实例
public class Exam6 { public static void main(String[] args) { //1.使用while循环向控制台输出1~100之间的整数 int i = 1; while(i <= 100){ System.out.print(i); // ---相当于tab键 缩进的功能 System.out.print(" "); i++; } System.out.println("while循环结束"); } }
do while
程序流程图:
语法
do{ }while(条件);
实例
public class Exam7 { public static void main(String[] args) { int i = 1; do{ System.out.print(i); System.out.print(" "); i++; }while(i<=9); System.out.println("循环结束"); } }
for
系统流程图:
语法
for(表达式1:条件表达式:增量){ 循环语句; }
实例
public class Exam8 { public static void main(String[] args) { int i ; //for语句 先判断,后执行 //for循环也称为计数器循环 //表达式1 负责将计数变量初始化,表达式1只在循环的第一次时执行 //条件表达式用于判断循环是否可以继续 //增量,使计数变量在每次循环时进行增(减) //执行流程:(表达式1因为只在循环开始后第一次执行)条件表达式->循环语句->增量->条件表达式->循环语句...... for(i=1;i<=9;i++){ System.out.print(i); System.out.print(" "); } } }
九九乘法表
public class Exam10 { public static void main(String[] args) { //九九乘法表 int i,j,k; for(i=1;i<=9;i++){ for(j=1;j<=i;j++){ k = i*j; System.out.print(j+"*"+i+"="+k); System.out.print(" "); } System.out.println(" "); } } }