所有的流程控制语句都可以相互嵌套、互不影响

一、用户交互Scanner

Scanner对象

  • 之前我们学的基本语法中我们并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户的输入。 java.util.Scanner 是 JDK 5 的新特征,我们可以通过Scanner类来获取用户的输入
  • 基本语法:
  1. Scanner s = new Scanner(System.in);
  • 通过 Scanner 类的 next() 与 nextLine() 方法获取输入的字符串,在读取前我们一般需要使用 asNext() 与 hasNextLine() 判断是否还有输入的数据。

  • next():

    1. 一定要读取到有效字符后才可以结束输入(一定要输入,否则程序就不结束)。
    2. 对输入有效字符之前遇到的空白,next()方法会自动将其去掉。
    3. 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
    4. next() 不能得到带有空格的字符串
  1. public class Scanner_Next {
  2. public static void main(String[] args) {
  3. //创建一个扫描对象,通过 System.in 用于接收键盘数据
  4. Scanner scanner = new Scanner(System.in);
  5. System.out.println("请输入(使用 next() 方式接收):");
  6. //判断用户有没有输入字符串
  7. if (scanner.hasNext()){
  8. //使用 next() 接收用户的输入,这句一旦执行,程序会一直等待用户输入完毕
  9. String s = scanner.next();
  10. System.out.println(s);
  11. }
  12. //凡是属于 IO 流的类,如果不关闭就会一直占用资源
  13. scanner.close();
  14. }
  15. }
  • nextLine():

    1. 以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符
    2. 可以获得空白
  1. public class Scanner_NextLine {
  2. public static void main(String[] args) {
  3. //创建一个扫描对象,通过 System.in 用于接收键盘数据
  4. Scanner scanner = new Scanner(System.in);
  5. System.out.println("请输入(使用 nextLine() 方式接收):");
  6. //判断用户有没有输入字符串
  7. if (scanner.hasNextLine()){
  8. String s = scanner.nextLine();
  9. System.out.println(s);
  10. }
  11. }
  12. }
  1. public class Scanner_NotIf {
  2. public static void main(String[] args) {
  3. Scanner scanner = new Scanner(System.in);
  4. System.out.println("请输入(没有 if() 判断) 方式接收):");
  5. //判断用户有没有输入字符串
  6. String s = scanner.nextLine();
  7. System.out.println(s);
  8. }
  9. }
  1. public class Scanner_NextInt_NextFloat {
  2. public static void main(String[] args) {
  3. Scanner scanner = new Scanner(System.in);
  4. System.out.println("请输入整数:");
  5. if (scanner.hasNextInt()){
  6. int i = scanner.nextInt();
  7. System.out.println(i);
  8. } else {
  9. System.out.println(scanner.nextLine() + ",不是整数!");
  10. }
  11. System.out.println("请输入小数:");
  12. if (scanner.hasNextFloat()){
  13. float f = scanner.nextFloat();
  14. System.out.println(f);
  15. } else {
  16. System.out.println(scanner.nextLine() + ",不是小数!");
  17. }
  18. scanner.close();
  19. }
  20. }
  1. public class Scanner_Exer {
  2. public static void main(String[] args) {
  3. //我们可以输入多个数字,并求其总和与平均数,没输入一个数字用回车确认,通过输入非数字来结束输入并输出执行结果
  4. Scanner scanner = new Scanner(System.in);
  5. //AA和
  6. double sum = 0;
  7. //AA计算输入了多少个数字
  8. int total = 0;
  9. System.out.println("请输入数字:");
  10. //通过循环判断是否还有输入,并在里面对每一次进行求和统计
  11. while (scanner.hasNextDouble()) {
  12. double d = scanner.nextDouble();
  13. sum += d;
  14. // total = total + 1;
  15. // total = ++total; 不赋值的话 total++ 和 ++total 效果是一样的
  16. total += 1;
  17. System.out.println("和:" + sum);
  18. System.out.println("平均数:" + sum / total);
  19. System.out.println("计算输入了" + total + "个数字");
  20. }
  21. scanner.close();
  22. }
  23. }

二、顺序结构

  • Java的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行。
  • 顺序结构是最简单的算法结构。

  • 语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构
  1. public class SequenceStructure {
  2. public static void main(String[] args) {
  3. System.out.println("顺序结构1");
  4. System.out.println("顺序结构2");
  5. }
  6. }

三、选择结构

1.if单选择结构

  • 我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用 if 语句来表示

  • 语法:

    1. if(布尔表达式){
    2. //如果布尔表达式为 true 将执行的语句
    3. }

    1. public class If {
    2. public static void main(String[] args) {
    3. Scanner scanner = new Scanner(System.in);
    4. System.out.println("请输入:");
    5. String s = scanner.nextLine();
    6. if (s.equals("hello")){
    7. System.out.println(s);
    8. }
    9. System.out.println("end");
    10. scanner.close();
    11. }
    12. }

2.if双选择结构

  • 有个需求,公司要收购一个软件,成功了,支付100万,失败了,自己找人开发。这样的需求用一个 if 就搞不定了,我们需要有两个判断,需要一个双选择结构,所以就有了 if-else 结构。

  • 语法:

    1. if(布尔表达式){
    2. //如果布尔表达式为 true 将执行的语句
    3. } else {
    4. //如果布尔表达式为 false 将执行的语句
    5. }

  1. public class IfElse {
  2. public static void main(String[] args) {
  3. //考试分数大于 60 就是及格,小于 60 就不及格
  4. Scanner scanner = new Scanner(System.in);
  5. System.out.println("请输入考试分数:");
  6. int score = scanner.nextInt();
  7. if (score >= 60){
  8. System.out.println("及格");
  9. } else {
  10. System.out.println("不及格");
  11. }
  12. scanner.close();
  13. }
  14. }

3.if多选择结构

  • 我们发现刚才的代码不符合实际情况,真实的情况可能存在 ABCD ,存在区间多级判断。比如 90~100 就是 A , 80~90 就是 B ……等等,在生活中我们很多时候的选择也不仅仅只有两个,所以我们需要一个多选择结构来处理这类问题。

  • 语法:

    1. if(布尔表达式1){
    2. //如果 布尔表达式1 为 true 将执行的语句
    3. } else if(布尔表达式2){
    4. //如果 布尔表达式2 为 true 将执行的语句
    5. } else if(布尔表达式3){
    6. //如果 布尔表达式 3为 true 将执行的语句
    7. } else {
    8. //如果以上布尔表达式都不为 true 将执行的语句
    9. }

  1. public class IfElseIfElse {
  2. public static void main(String[] args) {
  3. /*
  4. if 语句至多有 1 个 else 语句, else 语句在所有的 else if 语句之后。
  5. if 语句可以有若干个 else if 语句,它们必须在 else 语句之前。
  6. 一旦其中一个 else if 语句检测为 true ,其他的 else if 以及 else 语句都将跳过执行。
  7. */
  8. Scanner scanner = new Scanner(System.in);
  9. System.out.println("请输入分数:");
  10. int score = scanner.nextInt();
  11. if (score > 90 && score <= 100){
  12. System.out.println("A");
  13. } else if (score > 80 && score <= 90){
  14. System.out.println("B");
  15. } else if (score > 70 && score <= 80){
  16. System.out.println("C");
  17. } else if (score >= 60 && score <= 70){
  18. System.out.println("D");
  19. } else if (score >= 0 && score <= 60){
  20. System.out.println("E");
  21. } else {
  22. System.out.println("请输入正确成绩!!!");
  23. }
  24. scanner.close();
  25. }
  26. }

4.嵌套的if结构

  • 使用嵌套的 if...else 语句是合法的。也就是说可以在另一个 if 或者 else if 语句中使用 if 或者 else if 语句。可以像 if 语句一样嵌套 else if...else 。

  • 语法:

    1. if(布尔表达式1){
    2. //如果布尔表达式1为 true 将执行的语句
    3. if(布尔表达式2){
    4. //如果布尔表达式2为 true 将执行的语句
    5. }
    6. }
  • 思考:我们需要寻找一个数,在1~100之间(二分法)

    • 把 1~100 分为 1~50 和 50~100,然后 1~50 细分, 50~100 细分
  1. public class IfElseIf {
  2. public static void main(String[] args) {
  3. Scanner scanner = new Scanner(System.in);
  4. int num = 0;
  5. System.out.println("输入s开始游戏,输入p结束游戏");
  6. String start = scanner.next();
  7. boolean flag = true;
  8. while (start.equals("s")) {
  9. int count = 7;
  10. System.out.println("输入1-100之间的数字");
  11. String str = scanner.next();
  12. if (str.equals("p")) {
  13. System.out.println("游戏结束");
  14. break;
  15. } else if (Integer.parseInt(str) >= 1
  16. && Integer.parseInt(str) <= 100) {
  17. int answer = Integer.parseInt(str);
  18. Random random = new Random();
  19. int result = random.nextInt(100) + 1;
  20. while (count >= 1) {
  21. boolean r = false;
  22. if (result > Integer.parseInt(str)) {
  23. count--;
  24. System.out.println("你输入的数字过小,你还有" + count + "次机会");
  25. } else if (result < Integer.parseInt(str)) {
  26. count--;
  27. System.out.println("你输入的数字过大,你还有" + count + "次机会");
  28. } else {
  29. r = true;
  30. count--;
  31. System.out.println("恭喜你回答正确");
  32. num++;
  33. break;
  34. }
  35. if (!r) {
  36. System.out.println("再挑一个数字吧");
  37. str = scanner.next();
  38. }
  39. }
  40. } else {
  41. System.out.println("请输入正确的数字");
  42. }
  43. System.out.println("你已经成功答对" + num + "次");
  44. }
  45. }
  46. }

5.switch多选择结构

  • 多选择结构还有一个实现方式就是 switch case 语句。

  • switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。

  • 语法:

    1. switch(expression){
    2. case value :
    3. //语句
    4. break; //可选
    5. case value :
    6. //语句
    7. break; //可选
    8. //你可以有任意数量的 case 语句
    9. default : //可选
    10. //语句
    11. }
  • switch 语句中的变量类型可以是:

  • byte、short、int、char

    1. public class SwitchCase_Char {
    2. public static void main(String[] args) {
    3. //switch 匹配一个具体的值,匹配成功就返回当前 case 的值,然后根据是否有 break 语句判断是否继续输出,
    4. //case:穿透如果没有加 break 语句就把下面的语句都输出了
    5. char grade = 'C';
    6. switch (grade) {
    7. case 'A':
    8. System.out.println("优秀");
    9. break;
    10. case 'B':
    11. System.out.println("良好");
    12. break;
    13. case 'C':
    14. System.out.println("中等");
    15. break;
    16. case 'D':
    17. System.out.println("及格");
    18. break;
    19. case 'E':
    20. System.out.println("不及格");
    21. break;
    22. default:
    23. System.out.println("未知等级");
    24. }
    25. }
    26. }
  • 从 JDK7 开始

  • switch 支持字符串 String 类型

  • 同时 case 标签必须为字符串常量或字面量

    1. public class SwitchCase_String {
    2. public static void main(String[] args) {
    3. String name = "张三";
    4. //JDK7 的新特性,表达式结果可以是字符串
    5. //字符的本质还是数字
    6. //反编译:Java 《== class(字节码文件)
    7. switch (name) {
    8. case "张三":
    9. System.out.println("张三");
    10. break;
    11. case "李四":
    12. System.out.println("李四");
    13. break;
    14. case "王五":
    15. System.out.println("王五");
    16. break;
    17. case "赵六":
    18. System.out.println("赵六");
    19. break;
    20. default:
    21. System.out.println("未知人员");
    22. }
    23. }
    24. }
  • if 判断区间比较方便,而 switch 在匹配一个具体的值方面更好

  • 反编译:

    • IDEA 中 Java 项目编译之后输出的路径(class字节码文件所在位置):

      ![IDEA 中 Java 项目编译之后输出的路径](https://cdn.jsdelivr.net/gh/327506144/picx-xpoet-cn@master/20210626/IDEA 中 Java 项目编译之后输出的路径.png)

    • 打开文件夹,将 class 文件与 Java 文件放在一起就可以看到反编译之后的文件

      1. //
      2. // Source code recreated from a .class file by IntelliJ IDEA
      3. // (powered by Fernflower decompiler)
      4. //
      5. package com.minami.e_switch_case;
      6. public class SwitchCase_String {
      7. public B_SwitchCase_String() {
      8. }
      9. public static void main(String[] args) {
      10. String name = "张三";
      11. byte var3 = -1;
      12. switch(name.hashCode()) {
      13. case 774889:
      14. if (name.equals("张三")) {
      15. var3 = 0;
      16. }
      17. break;
      18. case 842061:
      19. if (name.equals("李四")) {
      20. var3 = 1;
      21. }
      22. break;
      23. case 937065:
      24. if (name.equals("王五")) {
      25. var3 = 2;
      26. }
      27. break;
      28. case 1143448:
      29. if (name.equals("赵六")) {
      30. var3 = 3;
      31. }
      32. }
      33. switch(var3) {
      34. case 0:
      35. System.out.println("张三");
      36. break;
      37. case 1:
      38. System.out.println("李四");
      39. break;
      40. case 2:
      41. System.out.println("王五");
      42. break;
      43. case 3:
      44. System.out.println("赵六");
      45. break;
      46. default:
      47. System.out.println("未知人员");
      48. }
      49. }
      50. }
  • 看源码

四、循环结构

1.while 循环

  • while是最基本的循环,它的结构为:

    1. while( 布尔表达式 ){
    2. //循环内容
    3. }
  • 只要布尔表达式为true,循环就会一直执行下去。

  • 我们大多数情况是会让循环停止下来的,我们需要一个让表达式失效的方式来结束循环。

    1. public class While {
    2. public static void main(String[] args) {
    3. //输出1~100
    4. int i = 1;
    5. while (i<=100){
    6. System.out.println(i++);
    7. }
    8. }
    9. }
  • 少部分情况需要循环一直执行,比如服务器的请求响应监听等。

  • 循环条件一直为true就会造成无限循环(死循环),我们正常的业务编程中应该尽量避免死循环。会影响程序性能或者造成程序卡死崩溃!

    1. public class While_EndlessLoop {
    2. public static void main(String[] args) {
    3. //死循环--正常的业务编程中应该尽量避免
    4. while (true){
    5. //等待客户端连接--QQ
    6. //定时检查任务--闹钟
    7. }
    8. }
    9. }
  • 思考:计算1+2+3+……+100=?

    1. public class While_Exer {
    2. public static void main(String[] args) {
    3. //计算1+2+3+……+100=?
    4. int i = 1;
    5. int sum = 0;
    6. while (i <= 100) {
    7. sum = sum + i;
    8. i++;
    9. }
    10. System.out.println(sum);
    11. }
    12. }

2.do...while 循环

  • 对于 while 语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。

  • do...while 循环和 while 循环相似,不同的是, do...while 循环至少会执行一次。

  • 语法:

    1. do{
    2. //代码语句
    3. }while(布尔表达式);
    1. public class DoWhile {
    2. public static void main(String[] args) {
    3. //计算1+2+3+……+100=?
    4. int i = 1;
    5. int sum = 0;
    6. do {
    7. sum = sum + i;
    8. i++;
    9. } while (i <= 100);
    10. System.out.println(sum);
    11. }
    12. }
  • while 和 do...while 的区别:

  • while 先判断后执行。 do...while 是先执行后判断!

  • do...while 总是保证循环体会被至少执行一次!这是它们的主要差别。

  1. public class DoWhile_WhileAndDoWhile {
  2. public static void main(String[] args) {
  3. int i = 0;
  4. while (i < 0){
  5. //不进入循环
  6. System.out.println(i);
  7. i++;
  8. }
  9. System.out.println();
  10. do {
  11. //至少在循环中走一次
  12. System.out.println(i);
  13. i++;
  14. } while (i < 0);
  15. }
  16. }

3.for 循环

  • 虽然所有循环结构都可以用 while 或者 do...while 表示,但Java提供了另一种语句 —— for 循环,使一些循环结构变得更加简单。

    1. public class For_WhileAndFor {
    2. public static void main(String[] args) {
    3. //while循环
    4. int i = 1; //初始化条件
    5. while (i <= 100) { //条件判断
    6. //循环体
    7. System.out.println(i);
    8. i+=2; //迭代
    9. }
    10. System.out.println();
    11. //for循环
    12. for (int j = 1; j <= 100; j++) { //初始化条件; 条件判断; 迭代
    13. //循环体
    14. System.out.println(j);
    15. }
    16. /*
    17. 关于 for 循环有以下几点说明:
    18. 最先执行初始化步骤。可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句。
    19. 然后,检查布尔表达式的值。如果为true,循环体被执行。如果为false,循环终止,开始执行循环体后面的语句。
    20. 执行一次循环后,更新循环控制变量(迭代因子控制循环变量的增减)。
    21. 再次检查布尔表达式,循环执行上面的过程。
    22. */
    23. //死循环
    24. for (; ; ){
    25. }
    26. }
    27. }
  • for 循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构。

  • for 循环执行的次数是在执行前就确定的。语法:

  1. for(初始化条件; 布尔表达式; 迭代){
  2. //代码语句
  3. }
  • 练习 1 :计算 0~100 之间的奇数和偶数的和

    1. public class For_Exer1 {
    2. public static void main(String[] args) {
    3. //练习 1 :计算 0~100 之间的奇数和偶数的和
    4. int odd = 0; //奇数
    5. int even = 0; //偶数
    6. for (int i = 0; i <= 100; i++) {
    7. if (i % 2 != 0) {
    8. odd = odd + i;
    9. } else {
    10. even += i;
    11. }
    12. }
    13. System.out.println(odd);
    14. System.out.println(even);
    15. }
    16. }
  • 练习 2 :用 while 或者 for 循环输出 1~100 之间能被 5 整除的数,并且每行输出 3 个

    1. public class For_Exer2 {
    2. public static void main(String[] args) {
    3. //练习 2 :用 while 或者 for 循环输出 1~100 之间能被 5 整除的数,并且每行输出 3 个
    4. for (int i = 1; i <= 1000; i++) {
    5. if (i % 5 == 0) {
    6. System.out.print(i + "\t");
    7. }
    8. if (i % (5 * 3) == 0) {
    9. System.out.println();
    10. }
    11. }
    12. }
    13. }
  • 练习 3 :打印九九乘法表

    1. public class For_Exer3 {
    2. public static void main(String[] args) {
    3. //练习 3 :打印九九乘法表
    4. /*
    5. 1*1=1
    6. 1*2=2 2*2=4
    7. 1*3=3 2*3=6 3*3=9
    8. 1*4=4 2*4=8 3*4=12 4*4=16
    9. 1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
    10. 1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
    11. 1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
    12. 1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
    13. 1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
    14. */
    15. //1.先打印第一列
    16. //2.把固定的第一列再用一个循环包起来
    17. //3.去掉重复项,j <= i
    18. //4.调整样式
    19. for (int i = 1; i <= 9; i++) {
    20. for (int j = 1; j <= i; j++) {
    21. System.out.print(j + "*" + i + "=" + (i * j) + "\t");
    22. }
    23. System.out.println();
    24. }
    25. }
    26. }

4.在 JDK5 中引入了一种主要用于数组的 增强型 for 循环

  • 这里先只是见一面,做个了解,之后数组重点使用

  • JDK5 引入了一种主要用于数组或集合的增强型 for 循环。

  • 语法:

    1. for(声明语句 : 表达式){
    2. //代码语句
    3. }
  • 声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。

  • 表达式:表达式是要访问的数组名,或者是返回值为数组的方法。

  1. public class ForEach {
  2. public static void main(String[] args) {
  3. int[] arrs = {10, 20, 30}; //定义数组
  4. for (int i = 0; i < arrs.length; i++) {
  5. System.out.println(arrs[i]);
  6. }
  7. System.out.println();
  8. for (int arr : arrs) {
  9. System.out.println(arr);
  10. }
  11. }
  12. }

五、break & continue & goto

  • break 在任何循环语句的主体部分,均可用 break 控制循环流程。 break 用于强行退出循环,不执行循环中剩余的语句。( break 语句也在 switch 语句中使用,用来终止 switch 语句)
  1. public class Break {
  2. public static void main(String[] args) {
  3. int i = 0;
  4. while (i < 100) {
  5. i++;
  6. System.out.println(i); //输出到30
  7. if (i == 30) {
  8. break;
  9. }
  10. }
  11. System.out.println("跳出循环,之后执行这个");
  12. }
  13. }
  • continue 语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定
  1. public class Continue {
  2. public static void main(String[] args) {
  3. int i = 0;
  4. while (i < 100) {
  5. i++;
  6. if (i == 30) {
  7. continue;
  8. }
  9. System.out.println(i); //跳过30
  10. }
  11. }
  12. }
  • 关于 goto 关键字(了解即可)

    • goto 关键字很早就在程序设计语言中出现。尽管 goto 仍是Java的一个保留字,但并未在语言中得到正式使用; Java 没有 goto 。然而,在 break 和 continue 这两个关键字的身上,我们仍然能看出一些 goto 的影子——带标签的 break 和 continue 。
    • “标签”是指后面跟一个 :的标识符,例如 label:
    • 对Java来说唯一用到标签的地方是在循环语句之前。而在循环之前设置标签的唯一理由是:我们希望在其中嵌套另一个循环,由于 break 和 continue 关键字通常只中断当前循环,但若随同标签使用,它们就会中断存在标签的地方。
  1. public class Goto {
  2. public static void main(String[] args) {
  3. //打印 101~150 之间的所有质数(大于1的自然数中,除了1和它本身以外不再有其他因数的自然数)
  4. int count = 0;
  5. outer:for (int i = 101; i <= 150; i++) {
  6. for (int j = 2; j < (i / 2); j++) {
  7. if (i % j == 0) {
  8. continue outer;
  9. }
  10. }
  11. System.out.print(i + "\t");
  12. }
  13. }
  14. }

六、练习

  • 打印三角形

    1. public class PrintTriangles {
    2. public static void main(String[] args) {
    3. //打印三角形 4行
    4. /*
    5. * 3个空格 1个星
    6. *** 2个空格 3个星
    7. ***** 1个空格 5个星
    8. ******* 0个空格 7个星
    9. */
    10. for (int i = 1; i <= 5; i++) {
    11. for (int j = 5; j >= i; j--) {
    12. System.out.print(" ");
    13. }
    14. for (int j = 1; j <= i; j++) {
    15. System.out.print("*");
    16. }
    17. for (int j = 1; j < i; j++) {
    18. System.out.print("*");
    19. }
    20. System.out.println();
    21. }
    22. }
    23. }

5.Java流程控制的更多相关文章

  1. JAVA流程控制

    JAVA流程控制 example1: --输出九九乘法表 public class chengfabiao { public static void main (String[] args){     ...

  2. Java学习笔记之:Java流程控制

    一.介绍 Java流程控制包括顺序控制.条件控制和循环控制. 顺序控制,就是从头到尾依次执行每条语句操作.条件控制,基于条件选择执行语句,比方说,如果条件成立,则执行操作A,或者如果条件成立,则执行操 ...

  3. Java流程控制练习--万年历

    Java流程控制练习--万年历 标签: Java入坑之旅 0x01. 打印倒三角和正三角 public static void main(String[] args) { // TODO Auto-g ...

  4. Java 流程控制

                                   Java    流程控制 Java 分支结构 - if...else/switch 顺序结构只能顺序执行,不能进行判断和选择,因此需要分支 ...

  5. JAVA 流程控制之选择语句

    在程序设计时,有三种基本技术可以改变程序的流程控制: 调用方法: 选择: 循环. 在这里,我们主要来讲讲选择语句. JAVA中的选择语句与C语言中的基本相同,包括: if 语句: if/else 语句 ...

  6. 《快乐编程大本营》java语言训练班-第4课:java流程控制

    <快乐编程大本营>java语言训练班-第4课:java流程控制 第1节. 顺序执行语句 第2节. 条件分支语句:if条件语句 第3节. 条件分支语句:switch 条件语句 第4节. 条件 ...

  7. Java流程控制,for,switch,while.break,continue,return

    Java流程控制,for,switch,while.break,continue,return

  8. 053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结

    053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结 本文知识点: 流程控制知识总结 流程控制知识总结 选择结构语句 循环结构语句 ...

  9. 052 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 14 Eclipse下程序调试——debug2 多断点调试程序

    052 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 14 Eclipse下程序调试--debug2 多断点调试程序 本文知识点: Eclipse下程序调 ...

  10. 051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试——debug入门1

    051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试--debug入门1 本文知识点: 程序调试--debug入门1 程序 ...

随机推荐

  1. DDD划分领域、子域,核心域,支撑域的目的

    名词解释 在DDD兴起的原因以及与微服务的关系中曾举了一个研究桃树的例子,如果要研究桃树,将桃树根据器官分成根.茎.叶.花.果实.种子,这每一种器官都可以认为是一个研究领域,而领域又有更加具体的细分, ...

  2. GO语言异常处理01---恐慌的报出与处理

    package main import ( "fmt" "math" ) /*自己报出恐慌的语法*/ func main021() { fmt.Println( ...

  3. 多平台Gstreamer Multiplatform

    多平台Gstreamer Multiplatform GStreamer可在所有主要操作系统上运行,例如Linux,Android,Windows,Max OS X,iOS,以及大多数BSD,商业Un ...

  4. YOLOv4 资源环境配置和测试样例效果

    YOLOv4 资源环境配置和测试样例效果 基本环境:cuda=10.0,cudnn>=7.0, opencv>=2.4 一.下载yolov4 git clone https://githu ...

  5. fiddler抓取手机APP包相关的设置

    一.设置手机的代理服务器 1.前提:手机与电脑用的是同一个网络 2.fiddler设置允许远程连接,并设置好端口 3.查询电脑所在网络的ip地址(windows下,命令行窗口使用:ipconfig进行 ...

  6. 【NX二次开发】Block UI 线条颜色/线型/宽度

    属性说明 常规         类型 描述     BlockID     String 控件ID     Enable     Logical 是否可操作     Group     Logical ...

  7. 【NX二次开发】Block UI 通过浏览选择文件夹

    属性说明 属性   类型   描述   常规           BlockID    String    控件ID    Enable    Logical    是否可操作    Group    ...

  8. JVM调优的反思与总结

    垃圾回收的悖论 所谓"成也萧何败萧何".Java的垃圾回收确实带来了很多好处,为开发带来了便利.但是在一些高性能.高并发的情况下,垃圾回收确成为了制约Java应用的瓶颈.目前JDK ...

  9. MEMORY_TARGET不够时解决办法

    一.报错原因:设置的memory_max_target超过了系统中设置的share memory(/dev/shm)而已. 二.解决办法:增加tmpfs的大小 三.调整tmpfs的大小(两种方法) 1 ...

  10. 办公利器!用Python快速将任意文件转为PDF

    痛点: 相信大家都会遇到一种场景.老师/上司要求你把某个文件转为pdf,并且是一批(不止一个,一个的话手动就可以搞定),并且这种是枯燥无聊的工作,既没有什么技术含量又累. 试想一下,如果我把这些文件放 ...