Java中的分支语句:

if语句:

if语句的四种写法:

  (1)

  if(表达式_布尔值) {
  ...
  }

  (2)

  if(表达式_布尔值) {
  ...
  } else {
  ...
  }

  (3)

  if(表达式_布尔值) {
  ...
  } else if(表达式_布尔值) {
  ...
  }
  (4)
  if(表达式_布尔值) {
  ...
  } else if(表达式_布尔值) {
  ...
  } else {
  ...
  }

if条件语句是一个重要的编程语句,它用于告诉程序在某个条件成立的情况下执行某段程序,而在另一种情况下执行另外的语句。
使用if条件语句,可选择是否要执行紧跟在条件之后的那个语句。关键字if之后是作为条件的“布尔表达式”,如果该表达式返回的结果为true,则执行其后的语句;若为false,则不执行if条件之后的语句。if条件语句可分为简单的if条件语句、if…else语句和if…else if多分支语句。

if语句例子:

public class GetTerm { // 创建主类
    public static void main(String args[]) { // 主方法
        int x = 20; // 声明int型局部变量
        if (x > 30) { // 判断变量x是否大于30
            System.out.println("a的值大于30"); // 条件成立的输出信息
        } else if (x > 10) { // 判断变量x是否大于10
            System.out.println("a的值大于10,但小于30"); // 条件成立的输出信息
        } else if (x > 0) { // 判断变量x是否大于0
            System.out.println("a的值大于0,但小于10"); // 条件成立的输出信息
        } else { // 当以上条件都不成立时,执行的语句块
            System.out.println("a的值小于0"); // 输出信息
        }
    }
}

switch语句:

int a = 2;
switch(a) {
    case 1
    ...
    break;
    case 3
    ...
    break;
    case 5
    ...
    break;

    default
    ...
}

switch语句中表达式的值必须是整型或字符型,常量值1~常量值n必须也是整型或字符型。switch语句首先计算表达式的值,如果表达式的值和某个case后面的变量值相同,则执行该case语句后的若干个语句直到遇到break语句为止。此时如果该case语句中没有break语句,将继续执行后面case里的若干个语句,直到遇到break语句为止。若没有一个常量的值与表达式的值相同,则执行default后面的语句。default语句为可选的,如果它不存在,而且switch语句中表达式的值不与任何case的常量值相同,switch则不做任何处理。

switch语句例子:

public class GetSwitch { // 创建类
    public static void main(String args[]) { // 主方法
        int week = 2; // 定义int型变量week
        switch (week) { // 指定switch语句的表达式为变量week
            case 1: // 定义case语句中的常量为1
                System.out.println("Monday"); // 输出信息
                break;
            case 2: // 定义case语句中的常量为2
                System.out.println("Tuesday");
                break;
            case 3: // 定义case语句中的常量为3
                System.out.println("Wednesday");
                break;
            default: // default语句
                System.out.println("Sorry,I don't Know");
        }
    }
}

if   switch的区别:

if语句使用场景:
针对结果是boolean类型的判断
针对一个范围的判断
针对几个常量值的判断
switch语句使用场景:
针对几个常量值的判断

switch建议判断固定值的时候用

if建议判断区间或范围的时候用

*用switch能做的,用if都能做,反过来则不行

Java中的循环语句:

(1)

for(int i=0;i<10;i++) {
...
}

(2)

while(表达式_布尔值) {

}

(3)

do {

} while(表达式_布尔值);

三种循环语句简单实例:

public class Test2 {
    public static void main(String[] args){
        int i=0;
        for(;i<3;i++){
            System.out.println("for:"+i);
        }
        while(i<6){
            System.out.println("while:"+i);
            i++;
        }

        do{
            System.out.println("do:"+i);
            i++;
        }while(i<9);
    }
}

综合例子1:

如何输入成绩,得出评分:

import java.util.Scanner;
public class Lianxi
{
    public static void main(String[] args){
        int i=1;
    //使用死循环不断判断 for(;i<10;i--){ Scanner scanner=new Scanner(System.in); String str=scanner.nextLine(); int a =Integer.parseInt(str); if(str=="55"){ i=11; System.out.println("结束了"); } if(a<=100&&a>80){ System.out.println("优秀"); }else if(a<=80&&a>60){ System.out.println("良好"); }else if(a<=60&&a>50){ System.out.println("尚可"); }else if(a<=50&&a>=0){ System.out.println("不可"); }else { System.out.println("输入有错误!!!"); } } } }

综合例子2:

输出菱形

public class Var_02 {
    public static void main(String args[]) {
        int lineCount = 17;// 输出的菱形有多少行,请赋值成奇数

        int maxLineNum = (lineCount + 1) / 2;// 菱形最多一行
        for (int i = 1; i <= maxLineNum; i++) {// 循环菱形数量越来越多的几行
            for (int space = 1; space <= maxLineNum - i; space++) {// 输出空格,数量=最后一行-当前行数
                System.out.print("  ");
            }
            for (int star = 1; star <= (i * 2) - 1; star++) {// 输出星号,数量=行数*2-1
                System.out.print("* ");
            }
            System.out.println();// 换行
        }

        int declineCount = lineCount - maxLineNum;// 计算剩下的几行,这几行星号的数量是递减的
        for (int i = 1; i <= declineCount; i++) {// 循环菱形数量越来越少的行数
            for (int space = 1; space <= i; space++) {// 输出空格,数量等于当前的行数
                System.out.print("  ");
            }
            for (int star = 1; star <= (declineCount - i + 1) * 2 - 1; star++) {// 输出星号,数量等于(总数-当前行数)*2-1
                System.out.print("* ");
            }
            System.out.println();
        }

    }
}

补充:

foreach语句:

是for语句的特殊简化版本,但是foreach语句并不能完全取代for语句,然而任何foreach语句都可以改写为for语句版本。foreach并不是一个关键字,习惯上将这种特殊的for语句格式称之为foreach语句。foreach语句在遍历数组等方面为程序员提供了很大的方便(本书将在第6章对数组进行详细的介绍),语法如下所示:

for(元素变量x : 遍历对象obj) {
    引用了x的java语句;
}

例子:

public class Repetition { // 创建类Repetition
    public static void main(String args[]) { // 主方法
        int arr[] = { 7, 10, 1 }; // 声明一维数组
        System.out.println("一维数组中的元素分别为:"); // 输出信息
        for (int x : arr) {
        //foreach语句,int x引用的变量,arr指定要循环遍历的数组,最后将x输出
            System.out.println(x);
        }
    }
}

Java之分支和循环的更多相关文章

  1. Java控制语句——分支、循环、跳转

    分支语句(if语句,switch语句): 循环语句(for,while,do...while); 跳转语句(break,continue,return): 分支语句(if语句,switch语句) if ...

  2. java里的分支语句--程序运行流程的分类(顺序结构,分支结构,循环结构)

    JAVA里面的程序运行流程分三大类: 1,顺序结构:顺序结构就是依次执行每一行代码 2,分支结构:分支结构就是按不同的条件进行分支 3,循环结构:一段代码依条件进行循环执行. 其中,分支结构有两大类: ...

  3. [零基础学JAVA]Java SE基础部分-04. 分支、循环语句

    转自:http://redking.blog.51cto.com/27212/116751 1.课程名称:分支.循环 本季为JAVA程序中最重要的部分,在讲解的时候除了讲解各种主要的控制语句(分支语句 ...

  4. Android.mk (2) 函数进阶教程 - 分支、循环、子程序

    https://www.jianshu.com/p/674dc7d7b4b0 函数进阶教程 - 分支.循环.子程序 按照面向过程程序设计的标准流程,我们讲完了顺序结构,就要讲分支.循环和子程序.下面我 ...

  5. 02_5if switch分支与循环语句

    02_5if switch分支与循环语句 1.语句 1.1条件语句-根据不同条件,执行不同语句. if if ... else if ... else if if ... else if ... el ...

  6. python分支和循环结构

    本文收录在Python从入门到精通系列文章系列 1. 分支结构 1.1 应用场景 迄今为止,我们写的Python代码都是一条一条语句顺序执行,这种代码结构通常称之为顺序结构.然而仅有顺序结构并不能解决 ...

  7. 【.net 深呼吸】细说CodeDom(8):分支与循环

    有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...

  8. JAVA中的for-each循环与迭代

    在学习java中的collection时注意到,collection层次的根接口Collection实现了Iterable<T>接口(位于java.lang包中),实现这个接口允许对象成为 ...

  9. SQL变量、运算符、分支、循环语句

    变量: SQL语言也跟其他编程语言一样,拥有变量.分支.循环等控制语句. 在SQL语言里面把变量分为局部变量和全局变量,全局变量又称系统变量. 局部变量: 使用declare关键字给变量声明,语法非常 ...

随机推荐

  1. Mysql数据库二进制安装

    MySQL数据库有四种安装方法: 源码包编译安装 RPM包安装 二进制文件安装 官方yum源安装 这里我们主要介绍二进制包的安装方法 在MySQL官网下载二进制包并且上传到服务器上 解压二进制包 [r ...

  2. 互联网“剁手”新方向,VR全景购物忙——全景智慧城市常诚

    随着VR和AR技术的兴起,各行各业都在寻求VR+的对接方式,除了游戏和社交平台,另一大对VR有着浓厚兴趣的就是电商平台了,阿里.京东等电商巨头纷纷成立VR事业部,如何让亿万用户在VR中愉快的买买买,已 ...

  3. Buffer深入分析

    Buffer Buffer的类图如下: 除了Boolean,其他基本数据类型都有对应的Buffer,但是只有ByteBuffer才能和Channel交互.只有ByteBuffer才能产生Direct的 ...

  4. [Leetcode] Binary search, DP--300. Longest Increasing Subsequence

    Given an unsorted array of integers, find the length of longest increasing subsequence. For example, ...

  5. BOM(2)

    Window 子对象 (1)Location 对象 Location 对象包含有关当前 URL(统一资源定位符) 的信息.(Uniform Resource Location) Location 对象 ...

  6. Java对象与类中的一个小练习

    一直在Eclipse里做练习.是做一个练习,执行一个的那种.刚刚学习了Java的对象与类,练习中把类和执行放在同一包下的两个.java文件里面了.是可以执行的.(Get) 相关代码: public c ...

  7. flask 扩展之 -- flask-login

    一. 使用 Werkzeug 实现密码散列. generate_password_hash(password, method=pbkdf2:sha1, salt_length=8) 将原始密码作为输入 ...

  8. [USACO09MAR]地震损失2Earthquake Damage 2

    地震破坏 时间限制: 1 Sec  内存限制: 128 MB 题目描述 威斯康星发生了一场地震!约翰的牧场遭到了打击,有一些牛棚变成了废墟,如果一间牛棚遭到 了破坏,那么所有和它相连的道路都不能使用了 ...

  9. java实现Excel的导入、导出

    一.Excel的导入 导入可采用两种方式,一种是JXL,另一种是POI,但前者不能读取高版本的Excel(07以上),后者更具兼容性.由于对两种方式都进行了尝试,就都贴出来分享(若有错误,请给予指正) ...

  10. PHP大批量插入mysql数据库的优化

    <?php /** * Created by PhpStorm. * User: hanks * Date: 6/2/2017 * Time: 6:03 PM */ //PHP大批量插入mysq ...