Java教程

Java 程序流程控制学习总结

本文主要是介绍Java 程序流程控制学习总结,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Java 程序流程控制学习总结

本章学习目标

  • 掌握 Scanner 输入

  • 了解程序流程控制

  • 重点掌握 if / else 语句 (流程图)

  • 重点掌握 switch / case 语句(流程图)

  • 重点掌握 for 循环(流程图)

  • 重点掌握 while 循环(流程图)

  • 掌握 do while 循环(流程图)

  • 重点掌握 break 语句和 continute 语句

Scanner 输入

Scanner 使用方法

  • 导包

    import java.util.Scanner;
  • 创建

    Scanner sc = new Scanner(System.in);
  • 使用

    String inputString = scanner.next();   //返回值为键盘输入的字符串
    String inputInt = scanner.nextInt();   //返回值为键盘输入的整数

程序每次运行到 next( ) 或 nextInt( ) 方法时都会卡住,这是程序在等待你在键盘上输入数据,数据输入完成后程序继续运行。

顺序语句

语句:使用分号分隔的代码称作为一个语句

注意:没有写任何代码只是一个分号的时候,也是一条语句,称作空语句

顺序语句就是按照从上往下的顺序执行的语句

Scanner scanner = new Scanner(System.in);  //语句一
String inputString = scanner.next(); //语句二
System.out.println(inputString); //语句三
; // 语句四(空语句)

以上四条语句的执行顺序是从上往下执行,即语句一 -> 语句二 -> 语句三 -> 语句四

选择语句

if/else 语句

格式一

if (判断条件) {
    //如果符合条件执行下面的代码
    执行的代码块1;
    执行的代码块2;
    …
    执行的代码块n;
}

格式二

if (判断条件) {
    //如果符合条件执行下面的代码
    执行的代码块1;
    执行的代码块2;
    …    
    执行的代码块n;
} else {
    //如果不符合条件执行下面的代码
    执行的代码块1;
    执行的代码块2;
    …
    执行的代码块n;
}

注意:观察发现 if else 语句有点类似于三元运算符;其实三元运算符是 if else 的一种简写格式.

if else 结构 简写格式: 变量 = (条件表达式) ? 表达式1:表达式2;

三元运算符:

  • 好处:可以简化 if else 代码

  • 弊端:因为是一个运算符,所以运算完必须要有一个结果

格式三

if  (判断条件1 ) {
    执行语句块;
} else  if (判断条件2) {
    执行语句块;
}else if (判断条件3) {
    执行语句块;
}

if 语句特点:

  • 第二种格式与三元运算符的区别:三元运算符运算完要有值出现。好处是:可以写在其他表达式中

  • 条件表达式无论写成什么样子,只看最终的结构是否是 true 或者 false。

switch / case 语句

格式

switch (表达式)
{
    case 取值1:
        执行语句;
        break;
    case 取值2:
        执行语句;
        break;
    …...
    default:
        执行语句;
        break;
}

switch语句特点:

  • switch 语句选择的类型:byte、short、int 、char、string (JDK7 支持)

  • case 之间与 default 没有顺序;先判断所有的 case,没有匹配的 case 执行 default

  • switch 语句停止的条件是遇到了 break 关键字或者结束 switch 语句的大括号

  • 如果匹配的 case 或者 default 没有对应的 break,那么程序会继续向下执行,运行可以执行的语句,直到遇到 break 或者 switch 结尾结束

  • switch case 中的值必须要与 switch 表达式的值具有相同的数据类型,而且 case 后跟的值必须是常量,不能跟变量

注意:

  • case 后跟的是冒号:

  • 每个 case 中的执行语句一定要加 break;

循环语句

Java提供了三种类型的循环语句:

  • while 循环

  • do while 循环

  • for 循环

while 循环

格式
while (条件表达式) {    
  执行语句; 
}

do while 语句

格式
do {
    执行语句;
} while (条件表达式);
do while 语句特点是条件无论是否满足, 循环体至少被执行一次

注意:do while 后面有一个分号;

while 与 do while 区别
  • while:先判断条件,只有条件满足才执行循环体

  • do while:先执行循环体,再判断条件,条件满足,再继续执行循环体

for 语句

格式
for ( 初始化表达式;循环条件表达式;循环后的操作表达式 ) {
		执行语句块;
}

for 和 while 的区别

  • for 里面的两个表达式运行的顺序,初始化表达式只读一次,判断循环条件,为真就执行循环体,然后再执行循环后的操作表达式,接着继续判断循环条件,重复找个过程,直到条件不满足为止

  • while 与 for 可以互换,区别在于 for 为了循环而定义的变量,在 for 循环结束时就在内存中释放。而 while循环使用的变量在循环结束后还可以继续使用

三种无限循环格式

无限循环存在的原因是并不知道循环多少次,而是根据某些条件,来控制循环,推荐使用 while(true)

// 三种无限循环格式
while(true) {

}

for(;;) {

}

for(;true;) {

}
循环常见错误

多加分号:在 for 括号后和循环体之间加分号是常见错误;程序编译运行都可以通过,只是不是我们想要的结果

错误

for (int i = 0;i < 100; i++);{
    System.out.println("hello ");
}

正确

for (int i = 0; i < 100; i++) {
    System.out.println("hello ");
}

错误(死循环)

int i = 0;
while(i<100);{
    System.out.println("hello");
    i++;
}

正确

int i = 0;
while (i < 100) {
    System.out.println("hello");
    i++;
}

语句的嵌套应用

什么是嵌套形式,其实就是语句中还有语句

//for 循环嵌套 for 循环
for (...) {
	for (...) {
	
	}
}

break 和 continue

break
  • break 语句用于跳出本层循环体,从而提 前结束循环

  • break 语句用于跳出 switch 语句体

continue

continue 语句用于结束本次循环(即 跳过本次循环中余下尚未执行的语句), 接着再一次进行循环条件的判定

这篇关于Java 程序流程控制学习总结的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!