Java学习之==>条件判断、循环控制

一、条件判断

1、if-else

示例:

/**
 * 第1种,1个分支
 */
public void case1() {

  int age = 15;
  if (age > 18) {
    System.out.println("成年人");
  }
}

/**
 * 第2种,2个分支
 */
public void case2() {

  int age = 15;
  if (age > 18) {
    System.out.println("成年人");
  } else {
    System.out.println("未成年人");
  }
}

/**
 * 第3种,多个分支
 */
public void case3() {
  int num = 0;
  if (num > 10) {
    System.out.println("");
  } else if (num > 20) {
    System.out.println("");
  } else if (num > 30) {
    System.out.println("");
  } else if (num > 40) {
    System.out.println("");
  } else if (num > 50) {
    System.out.println("");
  } else {
    System.out.println("");
  }
}

2、switch-case

示例:

/**
 * 字符串数据作为表达式
 *
 * break关键字
 *
 * default关键字
 *
 * 可以作为switch表达式的数据类型: byte,short,char,int,枚举,String
 */
public void case1() {
  String str = "你好";
  switch (str) {
    case "你好":
      System.out.println("跟我打招呼");
      break;
    case "尼玛":
      System.out.println("这是要干架");
      break;
    case "嘿嘿嘿":
      System.out.println("这可能是要搞基");
      break;
    default:
      System.out.println("不懂你要说啥");
  }
}

/**
 * 多个常量落进相同的逻辑处理
 */
public void case2() {
  // type=1, 支付宝,
  // type=2, 微信
  // type=3, 京东
  // type=4, 易宝
  int type = 4;
  switch (type) {
    case 1:
    case 2:
    case 3:
      System.out.println("互联网支付");
      break;
    case 4:
    case 5:
    case 6:
    case 7:
      System.out.println("非互联网支付");
      break;
    default:
      System.err.println("出错啦, 不支持的类型");
  }
}

总结:

相同点

  • 都是一种逻辑分支的处理,语义: 要么你,要么我,要么他
  • 都有兜底的语句,if是else, switch是default

不同点

  • if-else 是一个范围的判断,如 小于10,大于100
  • switch-case 是精确的等值分支

注意

  • 使用switch的都可以使用if-else改写,反之不成立
  • 逻辑要兜住, else, default很重要

二、循环控制

1、for循环

示例:

/**
 * @author Luolei
 * @date 2019/8/24
 */
public class Test1 {

/**
 * 最基本的循环,打印1到100内的偶数
 */
public void case1() {
  for (int i = 2; i <= 100; i += 2) {
    System.out.println(i);
  }
}

/**
 * 死循环
 */
public void case2() {
  for (; ; ) {
    System.out.println("哈哈哈");
  }
}

/**
 * continue
 *
 * break
 */
public void case3() {
  for (int i = 0; i <= 10; i++) {
    System.out.println("yes");

    if (i % 2 == 0) {
      // 结束当前循环,进入下一次循环
      continue;
    }
    if (i == 9) {
      // 跳出循环
      break;
    }
    System.out.println(i);
  }
}

/**
 * 循环一个数组或list
 */
public void case4() {
  int[] arr = {1,2,3,4};
  for (int i : arr) {
    System.out.println(i);
  }
}

2、while循环

示例:

/**
 * 最基本的循环,打印1到10
 */
public void case1() {
  // init
  int i = 1;

  // test
  while (i <= 10) {

    // body
    System.out.println(i);

    // update
    i++;
  }
}

/**
 * 死循环,条件没有结束的时候
 */
public void case2() {

  while (true) {
    System.out.println("死循环");
  }
}

/**
 * continue && break
 */
public void case3() {

  int i = 1;
  while (i <= 100) {

    if (i % 2 == 0) {
      i++;
      // 结束当前循环,进入下一次循环
      continue;
    }
    if (i == 9) {
      // 跳出循环
      break;
    }
    System.out.println(i);
    i++;
  }
}

3、do-while循环

示例:

/**
 * 最基本的循环,打印1到10
 */
public void case1() {
  // init
  int num = 0;

  do {
    // body
    System.out.println("进入循环体");

    // update
    num++;
  } while (num < 10);
}

/**
 * 死循环
 */
public void case2() {
  // init
  int num = 1;

  do {
    // body
    System.out.println("进入循环体");

    // update
  } while (num == 1);
}

/**
 * continue && break
 */
public void case3() {

  // init
  int num = 1;

  // body
  do {
    System.out.println("进入循环体");
    if (num % 3 == 0 ) {
      num++;
      continue;
    }
    if (num % 5 == 0 ) {
      break;
    }
    num++;
    // update
  } while (num <= 100);
}

总结:

组成

  • 循环控制均可抽象成四部分

    • init        初始化
    • test       条件测试
    • body     循环体代码
    • update  迭代变更

注意

  • 一定要注意循环的退出条件,不要造成死循环
  • 即使不死循环,也要注意循环的次数
  • do-while至少需要执行一次然后再判断条件

原文地址:https://www.cnblogs.com/L-Test/p/11350798.html

时间: 2024-11-10 22:06:37

Java学习之==>条件判断、循环控制的相关文章

C学习if条件判断和for循环

通过学习if条件判断和for循环之后,做了一个实例.实现的实例都在代码中有详细的注释. #include <stdio.h> /****************************************************** * 输入一个数字n,求 * 1+1+2+1+2+3+1+2+3+4...+n * 该实例主要为了练习if语句和for语句 ******************************************************/ int main(void

Java初学者:条件判断及其语句

今天我们要说的是条件判断语句,条件判断是编程里最最常用最最基本的技巧.那么什么叫条件判断呢? 翻译成白话文就是“如果....那么....”的意思.比如,如果今天下雨,我就在家呆着; 如果下雪,我就出去打雪仗; 等等等等.在java里,我们这么表示这样的东西:if.....来表示这样的逻辑.下面我们来介绍一下java里条件表达式,然后再介绍常见的几种条件判断语句. 首先,条件表达式,最常用的有>, >=, <, <=, ==, String类的equals函数,其他各类库中返回值为布

Shell学习笔记 - 条件判断式

1. 判断格式 1) test 参数 文件 例: test -e /root/install.log 2) [ 参数 文件 ]  -- 推荐使用 例: [ -e /root/install.log ] 注意:中括号后面和前面需要有空格 2. 判断文件类型参数 1)-d 文件:判断该文件是否存在,并且是否为目录文件 2)-e 文件:判断文件是否存在 3)-f 文件:判断文件是否存在,并且是否为普通文件 4)-s 文件:判断文件是否存在,并且是否为非空 5)其他文件类型判断: -b 块设备文件:-c

shell学习之条件判断test

1.按照『文件类型』进行判断(存在与否) -e:该『文件』是否存在?存在为真(常用)-f:该『文件』是否为普通文件(file)?(常用)-d:该『文件』是否为目录文件(directory)?(常用)-b:该『文件』是否为一个块设备文件(block devic)?装置-c:该『文件』是否为一个字符设备文件(character device)?装置 -s:改『文件』是否为非空?-S:该『文件』是否为一个套接字文件(Socket)?文件-p:该『文件』是否为一个管道文件 FIFO (pipe) ?文件

[shellcode学习] 绕过条件判断

shellcode学习第一个例子. 以下有一段c语言编写的命令行程序,检验用户输入的数字,并判断是否合法.这里用户的输入被放在了函数的缓冲区里,但程序没有对缓冲区长度做检查,留下了漏洞.这里可以利用该漏洞绕过数字检察,使得任意输入都会被判定为正确. 在 validate_serial 中,do_valid_stuff 的地址溢出到函数的返回值上,就可实现. 源程序 #include <stdio.h> #include <stdlib.h> #include <string.

Java学习-005-初学常用的几个经典循环控制源代码

最近一段时间公司 App 改版,一直处在需求评审.代码评审.测试计划.测试用例.用例评审.用例执行.缺陷管理.测试总结的循环中,因而博客也好久没有更新了.虽然工作确实忙了点,但是也是自己懒惰了,从今天开始陆续整理之前学习 Java 时写的 Java 程序,并记录在博客中,供自己查阅,也希望能给初学 Java 的亲们一份参考,希望能对初学 Java 编程的亲们有所帮助.若有不足之处,敬请大神指正,不胜感激! 此文主要讲述在初学 Java 时,常用的几个经典的循环控制程序的源码整理.源代码测试通过日

原 Java学习之Xml系列二:xml按条件查询、xml递归遍历所有元素和属性

xml中加入了几条,为了方便查询时作为示例. 话不多说见代码注释: DTD文件:SwordTypeDefinition.dtd <?xml version="1.0" encoding="UTF-8"?> <!ELEMENT SwordLibrary (Sword*)> <!ELEMENT Sword (SwordName,Price,Attack)> <!ELEMENT SwordName (#PCDATA)> &l

Java 学习日志 2.1 if 条件选择语句(if switch 四种方法检验成绩状况)

任何一门知识的简历都是在原有知识的基础上开发建立的. Java继承发扬C++,C++继承发扬C语言,C语言继承发扬B语言,B语言继承发扬汇编语言,汇编语言又是建立在数学的分支上. 所以编程语言有很多数学基础.数学学得好,特别是数据结构与算法学的好,更加有助于学习精深编程. 同样我们的说话中也包含了很多逻辑数学知识. 就比如if条件判断语句. 如果(怎么怎么样)则{怎么怎么样:}否则{怎么怎么样:} If(条件判断){为真则表达式1}else{为假则表达式2}. 又因为世上的情况不止一两种,所以进

Sass学习笔记 -- 初步了解函数、运算、条件判断及循环

函数 sass定义了很多函数可供使用,当然你也可以自己定义函数,以@fuction开始.sass的官方函数链接为:sass fuction,实际项目中我们使用最多的应该是颜色函数,而颜色函数中又以lighten减淡和darken加深为最,其调用方法为lighten($color,$amount)和darken($color,$amount),它们的第一个参数都是颜色值,第二个参数都是百分比. //scss $baseFontSize:      10px !default; $gray: