顺序结构
定义:按照代码的顺序从上至下一次执行。程序在执行时默认的按照顺序结构执行。
选择结构
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);
//\t---相当于tab键 缩进的功能
System.out.print("\t");
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("\t");
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("\t");
}
}
}
九九乘法表
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("\t");
}
System.out.println("\r");
}
}
}