狂神说:流程控制——顺序选择循环结构

news2025/7/13 0:17:54

System.out.println(10)    // 输出带回车
System.out.print(10)    // 输出没有回车

一、顺序机构

挨个往下写,就是最基本的顺序结构

二、选择结构 if、switch

  1. if单选择结构

虽然简单,但也挺经常用的

        Scanner scanner = new Scanner(System.in);   // 和下面的scanner.close一起写

        System.out.println("输入一个单词,猜猜看对不对?");
        
        String sInput = scanner.next();
        if(sInput.equals("hello")){     // if单选择
            System.out.println("对啦!");
        }
        System.out.println("再来一次!");

        scanner.close();        // 必须关闭
  1. if双选择

Scanner scanner = new Scanner(System.in);

System.out.println("考了多少分呀?请输入:");
int score = scanner.nextInt();
if(score > 60){
    System.out.println("及格啦!");
}else{    // if双选择,多一个else
    System.out.println("没及格哦");
}

scanner.close();
  1. if多选择

在if中上下限写清楚了,最后一个else判断违规,这个写法挺精妙的。

        Scanner scanner = new Scanner(System.in);

        System.out.println("考了多少分呀?请输入:");
        int score = scanner.nextInt();
        if(score == 100){
            System.out.println("恭喜满分!");
        }else if(score <100 && score > 90){     // if多选择结构,else if语句
            System.out.println("A级");
        }else if(score <90 && score > 80){
            System.out.println("A级");
        }else if(score <80 && score > 70){
            System.out.println("A级");
        }else if(score <70 && score > 60){
            System.out.println("A级");
        }else if(score <60 && score > 0){
            System.out.println("不及格");
        }else{
            System.out.println("违规输入");
        }

        scanner.close();
  1. 嵌套的if

if中还有if

  1. switch多选择

匹配具体的值,可以int等(八大基本类型)或者string!(java7后)

写完case记得写break,防止穿透。default为所有条件都不匹配,则输出

        System.out.println("判断string");
        String grade = "C";
        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;
            case "E":
                System.out.println("挂科");
                break;
            default:
                System.out.println("未知等级");

        }

        System.out.println("判断char");
        char cgrade = 'c';
        switch (cgrade){
            case 'a':
                System.out.println("优秀");
                break;
            case 'b':
                System.out.println("良好");
                break;
            case 'c':
                System.out.println("及格");
                break;
            case 'd':
                System.out.println("再接再厉");
                break;
            case 'e':
                System.out.println("挂科");
                break;
            default:
                System.out.println("未知等级");

        }

反编译

  1. 打开Project Structure(3种方法)

  • ctrl + shift + alt + s

  • 右上角设置按钮

  • file -> Project Structure

  1. 找到output目录下的class

资源管理器中打开目录,一直点点点相应文件夹,找到相对应的class文件

  1. 把class拖到.java所在文件夹,看一下反编译后的代码

视频里case判断string使用hash表,而我并没有变化=.=

三、循环结构 while dowhile

  1. while

挺精巧,不要忘了i++

        // 输出0-100
        int i =0;
        while (i < 100){
            i++;
            System.out.println(i);
        }
  1. do...while

当出现必须进行一次操作时,用do...while

// 计算1到100的总和
        int i = 0;
        int result = 0;
        do {
            i++;
            result += i;
        }while (i < 100);

        System.out.println(result);
  1. for

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

        // VS: while语句
        int i =0;
        while (i < 100){
            i++;
            System.out.println(i);
        }

快捷键:100.for

增强for:

        int[] numbers = {12,12,13,24,54,65};

        for (int i: numbers){
            System.out.print(i + "    ");
        }

四、break和continue

  1. break【这个循环我不干了!】

跳出循环,主要用于switch。如果是for循环,则为跳出最近的for循环哦。

  1. continue【这次循环不干了,所以continue嘛】

终止某次循环

        for(int i = 0; i < 9; i++){
            System.out.print(i);
            if (i == 3) {
                System.out.println();
                continue;
            }
            System.out.println("  do something   ");
        }
  1. continue outer; 用标签的continue

输出150以内的所有质数

        outer:for (int i = 2; i <=150; i++){
            for (int j = 2; j < i; j++){
                if (i % j == 0) {
                    continue outer;
                }
            }
            System.out.println(i);
        }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/362541.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

毕业后想从事软件测试,现在需要学习哪些内容呢

在你选择学习之前&#xff0c;要先考虑一下这个是不是你喜欢的发展方向&#xff0c;而不是只听别人推荐就直接做了选择先了解下软件测试是做什么的以及未来发展前景&#xff0c;最后才是如何自学 软件测试就是在测试这个软件是不是能够完全按照需求运行。软件测试岗再简单点说…

基于JAVAWEB的出租车管理系统

摘要在Internet高速发展的今天&#xff0c;我们生活的各个领域都涉及到计算机的应用&#xff0c;其中包括出租车管理系统的网络应用&#xff0c;在国外出租车管理已经是很普遍的方式&#xff0c;不过国内的出租车管理可能还处于起步阶段。出租车管理系统具有出租、归还等功能。…

分布式之如何突破raft集群写数据性能瓶颈

写在前面 在分布式之Raft共识算法分析 一文中我们分析了当前比较常用的raft共识算法&#xff0c;通过raft算法我们可以很容易搭建集群并选举leader&#xff0c;然后由leader负责数据的写操作&#xff0c;这样也可以很容易的解决数据一致性的问题&#xff0c;但是只由leader来处…

C# 表达式树

lambda作为实现表达式树的一种方式&#xff0c;在开始学习表达式树之前&#xff0c;需要对lambda进行一些了解 表达式lambda&#xff0c;定义&#xff1a; (input-parameters) > expression 语句lambda&#xff0c;定义&#xff1a; (input-parameters) > { <sequen…

简单一招教你给大量视频添加srt字幕

很多小伙伴们在剪辑视频的同时需要给视频的画面中添加上srt字幕&#xff0c;那在有很多视频都要添加字幕的时候&#xff0c;就非常的费时&#xff0c;今天小编就给大家分享一个可以批量给大量视频添加srt字幕的简单方法&#xff0c;有需要的小伙伴可以进来看看具体步骤哦&#…

highlight.js高亮npm安装常见问题

目录 安装 highlight.js 安装 vue-highlightjs 安装highlightjs/vue-plugin main.js配置 最近在写低代码&#xff0c;有需求类似编辑器功能&#xff0c;实现代码高亮&#xff0c;然后用到了highlight.js&#xff0c;就整理一下。 官网链接直达 highlight.js 中文文档 安装 h…

calico-kube-controllers 启动失败处理

故障描述calico-kube-controllers 异常&#xff0c;不断重启日志信息如下2023-02-21 01:26:47.085 [INFO][1] main.go 92: Loaded configuration from environment config&config.Config{LogLevel:"info", WorkloadEndpointWorkers:1, ProfileWorkers:1, PolicyW…

java在Excel中添加png图片作为页眉(已解决)

1.背景 Excel在打印的时候需要附带水印打出&#xff0c;水印需要在下载Excel文件时就设置好 需要在打印的时候打印出水印&#xff0c;使用添加背景添加的水印在打印的时候不会出现&#xff0c;只有设置页眉&#xff0c;并将页眉设置为一长与打印纸张一样大小的图片&#xff0c…

Objective-C 字符串拼接函数 多个不同类型的参数拼接到一个字符串 类似于Java中 String.format()方法的原生API

总目录 iOS开发笔记目录 从一无所知到入门 文章目录需求ScreenshotCodeOutput需求 我有多个参数(类型也许不同)&#xff0c;需要拼接到一个字符串中。 在Java中有String.format()方法可以做到一次性格式转换。 在Objective-C中呢&#xff1f;也有具有类似功能的API&#xff1a…

从0探索NLP——导航帖

从0探索NLP——导航帖 人工智能是一个定义宽泛、知识组成复杂的领域&#xff0c;而NLP是人工智能领域中的一类任务&#xff0c;他在哪呢&#xff1f;Emmmmm~不能说都有涉猎只能说全都都沾点&#xff1a; 每次想要针对NLP的某一点进行讲解时&#xff0c;不讲那写细枝末节&…

【Git】Git下载安装与使用(一)

目录 1. 前言 1.1 什么是Git 1.2 使用Git能做什么 2. Git概述 2.1 Git简介 2.2 Git下载与安装 3. Git代码托管服务 3.1 常用的Git代码托管服务 3.2 码云代码托管服务 1. 前言 1.1 什么是Git Git是一个分布式版本控制工具&#xff0c;主要用于管理开发过程中的源代码…

多线程知识点

多线程 基本知识 创建线程的常用三种方式&#xff1a; 继承Thread类实现Runnable接口实现Callable接口&#xff08;JDK1.5>&#xff09; public class ThreadTest extends Thread {Overridepublic void run() {System.out.println(this.getName() "..开始.."…

国内动漫绘画培训班盘点

动漫培训机构哪家好&#xff1f;动漫培训班是一种有效的提升动漫水平的方式&#xff0c;可以帮助学生提高绘画技巧和技能&#xff0c;更好地表达自己的艺术想法。 一&#xff1a;动漫培训班排名 1、轻微课&#xff08;五颗星&#xff09; 主打课程有日系插画、游戏原画、古风插…

C语言进阶(二)—— 指针强化

1. 指针是一种数据类型1.1 指针变量指针是一种数据类型&#xff0c;占用内存空间&#xff0c;用来保存内存地址。void test01(){int* p1 0x1234;int*** p2 0x1111;printf("p1 size:%d\n",sizeof(p1));printf("p2 size:%d\n",sizeof(p2));//指针是变量&am…

Python实现贝叶斯优化器(Bayes_opt)优化卷积神经网络分类模型(CNN分类算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。1.项目背景贝叶斯优化器(BayesianOptimization) 是一种黑盒子优化器&#xff0c;用来寻找最优参数。贝叶斯优化器是基…

Redis+Caffeine多级(二级)缓存,让访问速度纵享丝滑

目录多级缓存的引入多级缓存的优势CaffeineRedis实现多级缓存V1.0版本V2.0版本V3.0版本多级缓存的引入 在高性能的服务架构设计中&#xff0c;缓存是一个不可或缺的环节。在实际的项目中&#xff0c;我们通常会将一些热点数据存储到Redis或MemCache这类缓存中间件中&#xff0…

【100个 Unity实用技能】☀️ | Unity 通过自定义菜单将资源一键导出

Unity 小科普 老规矩&#xff0c;先介绍一下 Unity 的科普小知识&#xff1a; Unity是 实时3D互动内容创作和运营平台 。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者&#xff0c;借助 Unity 将创意变成现实。Unity 平台提供一整套完善的软件解决方案&#xff…

ESP32设备驱动-内置电容触摸传感器

内置电容触摸传感器 文章目录 内置电容触摸传感器1、电容触摸传感器介绍2、软件准备3、硬件准备4、代码实现本文将详细介绍如何使用ESP32的内置电容式传感器。 1、电容触摸传感器介绍 ESP32 具有可用作触摸按钮的电容式传感器。 这些是引脚排列上著名的TOUCH引脚。 在开发板的…

vs2019+opencv450+opencv contrib450+cmake3.25.2安装流程

目的 为了研究利用sift、orb、surf等算法进行视觉特征检测&#xff0c;第一次配置折腾了四五天。 电脑环境 win10 opencv4.5.0 opencv contrib 4.5.0 cmake3.25.2 报错 问题1 OpenCV(3.4.3) Error: The function/feature is not implemented (This algorithm is patented…

基于QUIC 协议的HTTP/3

HTTP/2 存在一些比较严重的与 TCP 协议相关的缺陷&#xff0c;但由于 TCP 协议僵化&#xff0c;我们几乎不可能通过修改 TCP 协议自身来解决这些问题&#xff0c;那么解决问题的思路是绕过 TCP 协议&#xff0c;发明一个 TCP 和 UDP 之外的新的传输协议。但是这也面临着和修改 …