if Switch

顺序结构

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

顺序是最简单的算法结构。

语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。


选择结构

  • if单选择结构
  • if双选择结构
  • if多选择结构
  • 嵌套的if结构
  • Switch多选择结构

if单选择结构

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

语法:

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

if双选择结构

语法:

if(布尔表达式){
//如果布尔表达式的值为true
}else{
//否则布尔表达式的值为false
}
package com.xu.struct;

import java.util.Scanner;

public class IfDemo01 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.println("请输入内容");
        String s = scanner.nextLine();

        //equals:判断字符是否相等
        if (s.equals("hello")){
            System.out.println(s);
        }else{
            System.out.println("End");
        }

        scanner.close();
    }
}

package com.xu.struct;

import java.util.Scanner;

public class IfDemo02 {
    public static void main(String[] args) {
        //考试分数大于60分就及格,否则就不及格
        Scanner scanner = new Scanner(System.in);

        System.out.println("请输入成绩:");
        int score = scanner.nextInt();

        if (score>=60){
            System.out.println("及格");
        }else{
            System.out.println("不及格");
        }


        scanner.close();
    }
}


if多选择结构

在生活中我们很多时候的选择也不仅仅只有两个,所以我们需要一个多选择结构来处理这类问题!

语法:

if(布尔表达式 1){
//如果布尔表达式 1的值为true执行代码
}else if(布尔表达式 2){
//如果布尔表达式 2的值为true执行代码
}else if(布尔表达式 3){
//如果布尔表达式的值为true执行代码
}else{
//如果以上布尔表达式都不为true执行代码
}
package com.xu.struct;

import java.util.Scanner;

public class IfDemo03 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        /*
        if 语句至多有一个 else 语句, else语句在所有的 else if 语句之后
        if 语句可以有若干个 else if 语句,它必须在 else 语句之前。
        一旦其中一个else if 语句检测为true,其它的 else if以及else语句都将跳过执行。
         */
        System.out.println("请输入成绩");
        int score = scanner.nextInt();

        if (score==100){
            System.out.println("恭喜满分");
        }else if (score<100 && score>=90){
            System.out.println("优秀");
        }else if (score<90 && score>=80){
            System.out.println("良好");
        }else if (score<80 && score>=60){
            System.out.println("还需再多努力");
        }else {
            System.out.println("不及格");
        }





        scanner.close();
    }
}


switch多选择结构

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

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

Switch 语句中的变量类型可以是:

  • byte、short、int或者char。
  • 从java SE 7开始
  • Switch 支持字符串 String 类型了
  • 同时case 标签必须为字符串常量或字面量。
package com.xu.struct;

public class SwitchDemo01 {
    public static void main(String[] args) {
//case穿透    //switch 匹配一个具体的值
        char grade = 'B';
        switch (grade){
            case 'A':
            System.out.println("春");
            break;
            case 'B':
                System.out.println("夏");
                break;
            case 'C':
                System.out.println("秋");
                break;
            case 'D':
                System.out.println("冬");
                break;
            default:
                System.out.println("弄啥嘞");

        }

    }
}

package com.xu.struct;

public class SwitchDemo02 {
    public static void main(String[] args) {

        String name = "帅哥";
        //JDK的新特性,表达式结果可以是字符串!!!
        //字符串的本质还是数字

        //反编译 java---class (字节码文件)

        switch (name){
            case "美女":
                System.out.println("Beautiful girl");
                break;
            case "帅哥":
                System.out.println("Man");
                break;
            default:
                System.out.println("别闹了");

        }



    }
}

热门文章

编程学习 ·

百天打卡计划第四天-Thread之类的加载过程

类的加载过程 类的加载过程一般分为三个大阶段,加载阶段、连接阶段、初始化阶段。 1加载阶段:主要是负责查找并加载类的二进制数据文件,其实就是class文件。 2连接阶段:连接阶段的工作主要分为三个阶段验证:主要是确保类文件的正确性。 准备:为类的静态变量分配内存,并为…
编程学习 ·

毛毛爸爸手记-2

http://blog.sina.com.cn/s/blog_4bf99d0601000825.html今天,毛爸从天鹅和鸭子的故事说起。从前......一只美丽的天鹅有一天落在地上时,看见了一只健壮的鸭子,她立刻被这只帅气的鸭子所打动,她惊诧于鸭子不同于她同类的模样,不同于她同类气质,是那么的有型,那么的另类。…
编程学习 ·

Mathmatica多项式带余除法代码

几乎没有调用内置函数,除了求多项式最高次数时用了一下 Exponent[] (*解析多项式*) (*将f=a0+a1*x+...+an*x^n解析成{{a0,0},{a1,1},...,{an,n}}的形式*) polyCoefficients[f_] := Module[{rules1 = {c_*base_^power_ -> {c, power},base_^power_ -> {1, power},c_*x_ -…
编程学习 ·

NLP 任务中有哪些巧妙的 idea?

文章目录1. 分布式假设(Distributional Hypothesis)2. 词袋模型(Bag-of-Words)3. 潜在语义分析(Latent Semantic Analysis)4. 概率主题模型(Probabilistic Topic Models )5. 基于BMES的中文分词或基于BIO的NER/Chunking6. 基于PageRank的TextRank转载来源:https://www…
编程学习 ·

Java字节码增强探秘

1.字节码1.1 什么是字节码?Java之所以可以“一次编译,到处运行”,一是因为JVM针对各种操作系统、平台都进行了定制,二是因为无论在什么平台,都可以编译生成固定格式的字节码(.class文件)供JVM使用。因此,也可以看出字节码对于Java生态的重要性。之所以被称之为字节码,…
编程学习 ·

流量记录和回放n2disk

n2disk™是网络流量记录器应用程序。n2disk™是具有索引功能的10/40 Gbit网络流量记录器。使用n2disk™,您可以从实时网络接口以几Gigabit速率(在足够的硬件上以10 Gigabit / s以上)捕获全尺寸的网络数据包,并将其写入文件中而不会丢失任何数据包。n2disk™旨在将文件长时间…
编程学习 ·

微服务的全局异常处理器

如果是dubbo服务 直接在对外暴露服务的哪个模块添加该类即可 如果是springboot微服务 我们可以把他配置到网关里 并且在启动类配置如下目的是为了让服务知道该配置 否则不生效 ApiReturnObject是一个统一返回值类型 可以根据自己喜好进行定义 这里就不贴代码了package com.s…
编程学习 ·

vulnhub靶机-djinn3

1、靶机ip:192.168.0.110(开机就提示:不是所有的都需要扫描发现主机)2、扫描靶机端口root@kali:~# nmap -A -p- 192.168.0.110 Starting Nmap 7.80 ( https://nmap.org ) Nmap scan report for 192.168.0.110 Host is up (0.0011s latency). Not shown: 65531 closed ports…
编程学习 ·

萝卜小姐——知乎上看到的好用的IOT平台

作者:码云 Gitee 链接:https://www.zhihu.com/question/266251753/answer/827948303 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。码云Gitee 上有几个不错的物联网平台项目推荐给你,希望对你有帮助:)推荐项目1、开源的、分布式的物联…
编程学习 ·

硕彦博创李飞授---linux 权限 ,计算机基础

的权限:文件对于用户的一种操作许可 1,文件对于用户的分类:创建者 U 群组 G 其他人O 所有用户all 2,权限:读r 写w 执行x 3,文件的权限 【创建者】 【群组】【其他人】 -【rw-】 【rw-】【r–】1 dj dj 323 7月 1 第一位;文件的类型 - 普通文件 d 文件夹 s 网络文件 1…
编程学习 ·

firewalld管理方式

1.firewalld的开启 systemctl stop iptables systemctl disable iptables systemctl mask iptables systemctl unmask firewalld systemctl enable --now firewalld2.关于firewalld的域trusted 接受所有的网络连接home 用于家庭网络,允许接受ssh mdns ipp-client samba-clie…
编程学习 ·

Javaweb中的类:

filter //过滤器,解决中文字符集乱码util //数据库连接工具类entity //实体类dao //数据操作类servlet //servlet类
编程学习 ·

Java学习日记01

Java学习日记01运用Markdown以及Typora安装编译器了解大致的学习路线 运用Markdown以及Typora计划任务安装编译器计划任务了解大致的学习路线计划任务链接: java学习路线资源 java学习日表结合思想
编程学习 ·

[SpringCloud Alibaba学习笔记]服务注册与配置中心Nacos的入门及集群使用(配置+实操全步骤,基于阿里云&nacos1.3.0)

SpringCloud Alibaba 服务注册与配置中心Nacos的入门及使用 一、Nacos简介 Nacos中文文档 Nacos:一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。 简而言之就是注册中心+配置中心的组合,功能实现等于Eureka+Config+Bus 1.下载 下载地址 官网会是在github上…
编程学习 ·

elasticSearch docker安装,记录安装过程

elasticSearch docker安装,记录安装过程安装elasticsearch命令 #在挂载的目录下新建两个目录 mkdir -p ./config mkdir -p ./data #docker 拉取镜像文件 docker pull elasticsearch:7.4.2 #拉取elasticsearch可视化镜像 docker pull kibana:7.4.2 #新建配置文件,yml格式,冒号后…
编程学习 ·

wx.DateTime.ParseDate(‘yesterday‘)往前倒退一天

用wxpython写了个小程序,打开程序后要把工作日期往前倒退一天,看wx.DateTime的说明时,发现这个控件有强大的自动分析功能。官方原文如下:The date formatting and parsing functions convert wx.DateTime objects to and from text. The conversions to text are mostly tr…
编程学习 ·

2020抖音小店入驻流程

原文链接:https://blog.ccswust.org/15574.html一、访问入驻后台使用电脑浏览器打开网址https://sso.douyin.com/login/?service=https://fxg.jinritemai.com/index.html#/home,选择【抖音号登陆】,【重要,一定要登录自己的抖音号,才能把店铺和抖音号绑定在一起】※建议请…
编程学习 ·

DFuseNet论文阅读笔记

原文连接:https://arxiv.org/abs/1902.00761DFuseNet:利用RGB和稀疏深度信息的深度融合,完成图像引导的稠密深度补全 Shreyas S. Shivakumar, Ty Nguyen, Ian D. Miller, Steven W. Chen, Vijay Kumar and Camillo J. Taylor摘要:我们在文章中提出了一个卷积神经网络,该网…