当前位置: 首页 > news >正文

java学习总结(if switch for)

一.基本结构

1.单分支if

int num = 10;
if (num > 5) {System.out.println("num 大于 5");
}

2.双分支if-else

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

3.多分支

int age = 25;
if (age < 18) {System.out.println("未成年");
} else if (age < 60) {System.out.println("成年");
} else {System.out.println("老年");
}

二.条件表达式

1.关系运算符

(1)比较值的关系,返回 boolean 结果:

==(等于)、!=(不等于)、<(小于)、>(大于)、<=(小于等于)、>=(大于等于)

if (x != 0 && y > 5) { } 

(2)逻辑运算符

        &&(逻辑与,短路运算:左为 false 则右不执行)

        ||(逻辑或,短路运算:左为 true 则右不执行)

        !(逻辑非,取反

(3)括号与优先级

if ((x > 0 || y < 10) && z != 5) {  } 

三.代码块与作用域

单行语句可省略花括号

if () count++(); 

作用域限制

if (true) {int a = 10; 
}
// System.out.println(a); // 编译错误:a 未定义

四.嵌套if语句

int score = 75;
String gender = "male";if (score >= 60) {if (gender.equals("male")) { // 内层 ifSystem.out.println("男性及格");} else {System.out.println("女性及格");}
} else {System.out.println("不及格");
}

五.Switch

1.语法

switch (表达式) {case 值1:// 执行语句1break; case 值2:// 执行语句2break;default:// 执行语句n
}
switch (表达式) {case 值1 -> { // 箭头语法,自动 break// 执行语句1}case 值2 -> 执行语句2; // 单行语句可省略花括号default -> 执行语句n;
}

整数:

int day = 3;
switch (day) {case 1 -> System.out.println("周一");case 2 -> System.out.println("周二");default -> System.out.println("其他");
}

 字符串:

String season = "spring";
switch (season) {case "spring" -> System.out.println("春暖花开");case "summer" -> System.out.println("夏日炎炎");default -> System.out.println("未知季节");
}

 枚举:

enum Color { RED, GREEN, BLUE }
Color c = Color.GREEN;
switch (c) {case RED -> System.out.println("红色");case GREEN -> System.out.println("绿色"); // 输出:绿色case BLUE -> System.out.println("蓝色");
}

六.for

1.语法

for (初始化表达式; 条件表达式; 更新表达式) {// 循环体代码
}

(1)初始化表达式:仅执行一次,用于声明并初始化循环变量
(2)条件表达式:每次循环前检查,返回 boolean,为 true 时执行循环体。
(3)更新表达式:每次循环体执行后执行,用于修改循环变量

2.执行流程

(1)执行初始化表达式
(2)检查条件表达式:
                                        若为 true,执行循环
                                        若为 false,退出循环

(3)执行更新表达式,回到步骤2

3.事例

int sum = 0;
for (int i = 1; i <= 10; i++) {sum += i; 
}
System.out.println("和为:" + sum); 

4.增强for循环

(1)语法

for (数据类型 变量 : 数组或集合) {// 遍历每个元素,变量代表当前元素
}

遍历数组

int[] numbers = {1, 2, 3, 4, 5};
for (int num : numbers) { System.out.print(num + " ");
}

遍历集合

List<String> fruits = Arrays.asList("苹果", "香蕉", "橙子");
for (String fruit : fruits) {System.out.println(fruit);
}

相关文章:

java学习总结(if switch for)

一.基本结构 1.单分支if int num 10; if (num > 5) {System.out.println("num 大于 5"); } 2.双分支if-else int score 60; if (score > 60) {System.out.println("及格"); } else {System.out.println("不及格"); } 3.多分支 int…...

解释:指数加权移动平均(EWMA)

指数加权移动平均&#xff08;EWMA, Exponential Weighted Moving Average&#xff09; 是一种常用于时间序列平滑、异常检测、过程控制等领域的统计方法。相比普通移动平均&#xff0c;它对最近的数据赋予更高权重&#xff0c;对旧数据逐渐“淡化”。 ✅ 一、通俗理解 想象你…...

open harmony多模组子系统分析

multimodalinput是open harmony的核心输入子系统&#xff0c;负责统一管理触摸屏&#xff0c;键盘&#xff0c;鼠标&#xff0c;手势&#xff0c;传感器等多种 输入源&#xff0c;提供标准化事件分发机制。其核心 目标是通过统一的事件处理框架&#xff0c;实现跨设备&#xff…...

Hello Java!

1. Java发展史 1.1 计算机编程语言分类 机器语言&#xff1a;电子机器能够直接识别的语言&#xff0c;无需经过翻译&#xff0c;计算机内部就有相应的电路来完成它&#xff1b;从使用的角度来看&#xff0c;机器语言是最低级的语言。 机器语言。指令以二进制代码形式存在。 汇…...

vue 入门:生命周期

文章目录 vue组件的生命周期创建阶段更新阶段销毁阶段生命周期钩子函数 vue组件的生命周期 创建阶段、销毁阶段&#xff1a;只会执行一次更新阶段&#xff1a;会执行多次 创建阶段 beforeCreate 在实例初始化之后&#xff0c;数据观测&#xff08;data observer&#xff09;…...

C#容器源码分析 --- Dictionary<TKey,TValue>

Dictionary<TKey, TValue> 是 System.Collections.Generic 命名空间下的高性能键值对集合&#xff0c;其核心实现基于​​哈希表​​和​​链地址法&#xff08;Separate Chaining&#xff09;。 .Net4.8 Dictionary<TKey,TValue>源码地址&#xff1a; dictionary…...

yum的基本操作和vim指令

在我们的手机端或者Windows上下载软件&#xff0c;可以在相应的应用商店或者官网进行下载&#xff0c;这样对于用户来说十分的方便和便捷。而在Linux上&#xff0c;也有类似的安装方式&#xff0c;我们来一一了解一下。 Linux安装软件的3种方法 源代码安装 在Linux下安装软件…...

MCU刷写——HEX与S19文件互转详解及Python实现

工作之余来写写关于MCU的Bootloader刷写的相关知识,以免忘记。今天就来聊聊Hex与S19这这两种文件互相转化,我是分享人M哥,目前从事车载控制器的软件开发及测试工作。 学习过程中如有任何疑问,可底下评论! 如果觉得文章内容在工作学习中有帮助到你,麻烦点赞收藏评论+关注走…...

深入探讨避免MQ消息重复消费的策略与实现

引言 随着微服务架构的流行&#xff0c;消息队列&#xff08;Message Queue, MQ&#xff09;作为系统间异步通信的重要手段&#xff0c;被广泛应用于各种场景。然而&#xff0c;在使用MQ的过程中&#xff0c;一个不容忽视的问题是消息可能被重复消费。这不仅可能导致数据不一致…...

定制一款国密浏览器(8):SM3 摘要算法

上一章我们讲到了铜锁和 BoringSSL,本章从最简单的国密算法 SM3 摘要算法入手,说明一下 SM3 算法的移植要点。 SM3 算法本身并不复杂,详细算法说明参考《GB∕T 32905-2016信息安全技术 SM3密码杂凑算法》这份文档。因为铜锁开源项目有实现代码,直接照搬过来。 将 crypto/…...

【Docker基础】Compose 使用手册:场景、文件与命令详解

文章目录 一、什么是 Docker Compose二、为什么需要 Docker Compose三、Docker Compose 使用步骤 / 核心功能步骤核心功能&#xff1a; 四、Docker Compose 的使用场景五、Docker Compose 文件&#xff08;docker-compose.yml&#xff09;文件语法版本文件基本结构及常见指令常…...

RT-2论文深度解读:视觉-语言-动作统一模型的机器人泛化革命

1. 核心问题与挑战 传统机器人学习存在两大瓶颈&#xff1a; 数据效率低下&#xff1a;依赖特定场景的机器人操作数据&#xff08;如抓取、推压&#xff09;&#xff0c;收集成本高泛化能力局限&#xff1a;模型仅能完成训练中出现过的任务&#xff0c;无法应对长尾场景 RT-…...

git 提交标签

Git 提交标签 提交消息格式&#xff1a; <type>: <description> &#xff08;示例&#xff1a;git commit -m "feat: add user login API"&#xff09; 标签适用场景feat新增功能&#xff08;Feature&#xff09;。fix修复 Bug&#xff08;Bug fix&…...

学习率(Learning Rate)

学习率&#xff08;Learning Rate&#xff09;是深度学习中最关键的超参数之一&#xff0c;它控制模型在每次参数更新时的“步长大小”。简单来说&#xff1a;它决定了模型从错误中学习的“速度”。 直观比喻 想象你在山顶蒙眼下山&#xff08;找最低点&#xff09;&#xff1…...

李宏毅NLP-3-语音识别part2-LAS

语音识别part2——LAS Listen Listen主要功能是提取内容信息&#xff0c;去除说话人差异和噪声 。编码器&#xff08;Encoder&#xff09;结构&#xff0c;输入是声学特征&#xff0c;经过 Encoder 处理后&#xff0c;输出为高级表示&#xff0c;这些高级表示可用于后续语音识别…...

游戏引擎学习第222天

回顾昨天的过场动画工作 我们正在制作一个游戏&#xff0c;目标是通过直播的方式完成整个游戏的开发。在昨天的工作中&#xff0c;我享受了制作过场动画的过程&#xff0c;所以今天我决定继续制作多个层次的过场动画。 昨天我们已经开始了多层次过场动画的基本制作&#xff0…...

双系统win11 + ubuntu,如何完全卸载ubuntu系统?

双系统win11 ubuntu&#xff0c;如何完全卸载ubuntu? 注意事项 操作前确保有 Windows 安装介质&#xff08;USB&#xff09;&#xff0c;以防需要修复对 EFI 分区的操作要格外小心如果使用 BitLocker&#xff0c;可能需要先暂停保护如果遇到问题&#xff0c;可以使用 Windows…...

【T2I】Region-Aware Text-to-Image Generation via Hard Binding and Soft Refinement

code&#xff1a; https://github.com/NJU-PCALab/RAG-Diffusion Abstract 区域提示&#xff0c;或组成生成&#xff0c;能够实现细粒度的空间控制&#xff0c;在实际应用中越来越受到关注。然而&#xff0c;以前的方法要么引入了额外的可训练模块&#xff0c;因此只适用于特定…...

HarmonyOS:Map Kit简介

一、概述 Map Kit&#xff08;地图服务&#xff09; 为开发者提供强大而便捷的地图能力&#xff0c;助力全球开发者实现个性化显示地图、位置搜索和路径规划等功能&#xff0c;轻松完成地图构建工作。您可以轻松地在HarmonyOS应用/元服务中集成地图相关的功能&#xff0c;全方位…...

【从零实现高并发内存池】- 项目介绍、原理 及 内存池详解

&#x1f4e2;博客主页&#xff1a;https://blog.csdn.net/2301_779549673 &#x1f4e2;博客仓库&#xff1a;https://gitee.com/JohnKingW/linux_test/tree/master/lesson &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01; &…...

CSS margin(外边距)学习笔记

CSS 中的 margin 属性用于定义元素周围的空白区域&#xff0c;它是一个非常重要的布局工具&#xff0c;可以帮助我们控制元素之间的间距&#xff0c;从而实现更美观和易用的页面布局。以下是对 margin 属性的详细学习笔记。 一、margin 的基本概念 margin 是元素周围的透明区…...

【数据集】中国各省低空经济及无人机相关数据集(1996-2025年2月)

低空经济泛指3000米高空以下的飞行经济活动&#xff0c;以民用客运飞行器和无人驾驶航空器为主。低空经济产业是先进飞行器出行&#xff08;AAM&#xff09;在城市低空运行的一种变革性和颠覆性的复合新产业&#xff0c;主要以垂直起降型飞机&#xff08;VTOL&#xff09;与无人…...

C++动态分配内存知识点!

个人主页&#xff1a;PingdiGuo_guo 收录专栏&#xff1a;C干货专栏 大家好呀&#xff0c;又是分享干货的时间&#xff0c;今天我们来学习一下动态分配内存。 文章目录 1.动态分配内存的思想 2.动态分配内存的概念 2.1内存分配函数 2.2动态内存的申请和释放 2.3内存碎片问…...

哈喽打车 小程序 分析

声明 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01; 逆向过程 这一次遇到这种风控感觉挺有…...

泛型的二三事

泛型&#xff08;Generics&#xff09;是Java语言的一个重要特性&#xff0c;它允许在定义类、接口和方法时使用类型参数&#xff08;Type Parameters&#xff09;&#xff0c;从而实现类型安全的代码重用。泛型在Java 5中被引入&#xff0c;极大地增强了代码的灵活性和安全性。…...

云计算:数字浪潮中的第三次文明跃迁——从虚拟化到智能协同的范式革命

一、浪潮的序曲&#xff1a;从机械革命到数字原子的觉醒 20世纪中叶&#xff0c;当晶体管的发明点燃信息革命的火种时&#xff0c;人类社会的第三次浪潮已悄然萌芽。托夫勒预言的“信息将成为新的权力核心”&#xff0c;在21世纪初以云计算的形态具象化。这场浪潮的起点&#…...

redis哨兵机制 和集群有什么区别:

主从&#xff1a; 包括一个master节点 和多个slave节点&#xff1a; master节点负责数据的读写&#xff0c;slave节点负责数据的读取&#xff0c;master节点收到数据变更&#xff0c;会同步到slave节点 去实现数据的同步。通过这样一个架构可以去实现redis的一个读写分离。提升…...

java基础2

构造器&#xff1a; 构造器与类同名&#xff1b; 每个类可以有一个以上的构造器&#xff1b; 构造器可以有0个&#xff0c;1个或多个参数&#xff1b; 构造器没有返回值&#xff1b; 构造器总是伴着new一起调用 方法重载&#xff1a; 方法名字一样&#xff0c;参数不一样…...

《算法笔记》3.6小节——入门模拟->字符串处理

1009 说反话 #include <cstdio>int main() {char sen[80][80];int num0;while(scanf("%s",sen[num])!EOF){num;}for (int i num-1; i > 0; --i) {printf("%s ",sen[i]);}printf("%s\n",sen[0]);return 0; }字符串连接 #include <io…...

JavaScript:BOM编程

今天我要介绍的是JS中有关于BOM编程的知识点内容&#xff1a;BOM编程&#xff1b; 介绍&#xff1a;BOM全名&#xff08;Browser Object Model&#xff08;浏览器对象模型&#xff09;&#xff09;。 是浏览器提供的与浏览器窗口交互的接口&#xff0c;其核心对象是 window。与…...

用户自定义函数(UDF)开发与应用(二)

五、UDF 在不同平台的应用 5.1 数据库中的 UDF 应用&#xff08;如 MySQL、PostgreSQL&#xff09; 在数据库领域&#xff0c;UDF 为开发者提供了强大的扩展能力&#xff0c;使得数据库可以完成一些原本内置函数无法实现的复杂操作。 以 MySQL 为例&#xff0c;假设我们有一…...

C++——继承、权限对继承的影响

目录 继承基本概念 编程示例 1.基类&#xff08;父类&#xff09;Person 代码特点说明 权限对类的影响 ​编辑 编程示例 1. 公有继承 (public inheritance) 2. 保护继承 (protected inheritance) 3. 私有继承 (private inheritance) 重要规则 实际应用 继承基本概…...

Tkinter样式与主题定制

在创建图形用户界面&#xff08;GUI&#xff09;应用时&#xff0c;除了功能的实现外&#xff0c;界面的外观和用户体验也非常重要。Tkinter提供了多种方式来定制控件的样式&#xff0c;使应用程序界面更加美观和易用。在这一章中&#xff0c;我们将介绍如何使用Tkinter的样式和…...

CSS 背景属性学习笔记

CSS 背景属性用于定义 HTML 元素的背景效果&#xff0c;包括背景颜色、背景图像、图像平铺方式、图像定位以及图像是否固定等。以下是关于 CSS 背景属性的详细学习笔记。 一、背景颜色&#xff08;background-color&#xff09; background-color 属性用于定义元素的背景颜色…...

信息安全管理与评估2023广东省样题答案截图视频

2023年广东省职业院校技能大赛高职组 “信息安全管理与评估”赛项任务书 一、 赛项时间 9:00-13:30&#xff0c;共计4小时30分&#xff0c;含赛题发放、收卷时间。 二、 赛项内容 本次大赛&#xff0c;各位选手需要完成三个阶段的任务&#xff0c;其中第一个阶段需要…...

ubuntu学习day1

linux常用命令 1. 用户相关 1.1 切换用户 su root #切换到root用户 su user #切换到普通用户sudo能赋予普通用户管理者权限&#xff0c;一般不要直接使用root用户进行操作。 1.2 添加用户 useradd 用户名 useradd user1 #添加了用户名为user1的用户但在ubuntu中想要创建普…...

ubuntu22.04-VMware Workstation移动后无法连接网络

1.VMware 中查看NAT模式 2.查看宿主机VMnet8的IP地址 虚拟机里设置成192.168.20.160 &#xff0c; 255.255.255.0, 192.168.20.2 在ubuntu系统中设置如下&#xff1a; 至此可以连上了。...

如何评估大模型的性能?有哪些常用的评估指标?

评估大模型(如大语言模型 LLM)的性能是一个多维度的问题,常常需要结合多个指标从不同角度来考察模型的能力。以下是常见的评估方法和指标: 一、通用评估维度 任务性能(Task Performance) 衡量模型在特定任务上的表现,如问答、翻译、总结等。 语言能力(Linguistic Capa…...

Linux驱动开发-网络设备驱动

Linux驱动开发-网络设备驱动 一&#xff0c;网络设备总体结构1.1 总体架构1.2 NAPI数据处理机制 二&#xff0c;RMII和MDIO2.1 RMII接口2.2 MDIO接口 三&#xff0c;MAC和PHY模块3.1 MAC模块3.2 PHY模块 四&#xff0c;网络模型4.1 网络的OSI和TCP/IP分层模型4.1.1 传输层&…...

CTF web入门之文件包含

web78: include函数执行file引入的文件&#xff0c;如果执行不成功&#xff0c;就高亮显示当前页面的源码。 方法一&#xff1a;filter伪协议 file关键字的get参数传递&#xff0c;php://是一种协议名称&#xff0c;php://filter/是一种访问本地文件的协议&#xff0c;/readc…...

error: failed to run custom build command for `yeslogic-fontconfig-sys v6.0.0`

rust使用plotters时遇到编译错误。 一、错误 error: failed to run custom build command for yeslogic-fontconfig-sys v6.0.0 二、解决方法 我用的是opensuse&#xff0c;使用下面命令可以解决问题。 sudo zypper in fontconfig-devel...

低资源需求的大模型训练项目---调研0.5B大语言模型

一、主流0.5B大语言模型及性能对比 1. Qwen系列&#xff08;阿里&#xff09; • Qwen2.5-0.5B&#xff1a;阿里2024年9月开源的通义千问系列最小尺寸模型&#xff0c;支持32K上下文长度和8K生成长度。在中文场景下表现优异&#xff0c;指令跟踪、JSON结构化输出能力突出&…...

信息安全管理与评估广东省2023省赛正式赛题

任务1&#xff1a;网络平台搭建(60分) 题号 网络需求 1 根据网络拓扑图所示&#xff0c;按照IP地址参数表&#xff0c;对DCFW的名称、各接口IP地址进行配置。&#xff08;10分&#xff09; 2 根据网络拓扑图所示&#xff0c;按照IP地址参数表&#xff0c;对DCRS的名称进…...

LeetCode.225. 用队列实现栈

用队列实现栈 题目解题思路1. push2. pop3. empty CodeQueue.hQueue.cStack.c 题目 225. 用队列实现栈 请你仅使用两个队列实现一个后入先出&#xff08;LIFO&#xff09;的栈&#xff0c;并支持普通栈的全部四种操作&#xff08;push、top、pop 和 empty&#xff09;。 实现…...

CTF--bp

一、原题&#xff1a; &#xff08;1&#xff09;提示&#xff1a;弱密码top1000&#xff1f;z????? &#xff08;2&#xff09;原网页&#xff1a; 二、步骤&#xff1a; 1.先打开BP&#xff0c;随便输入一个密码&#xff1a; 2.打开BP&#xff0c;发现password&#…...

01_背包问题

package org.josh; import java.util.*; public class Main { public static void main(String[] args) { Scanner scanner new Scanner(System.in); int n scanner.nextInt(); // 物品数量 long w scanner.nextLong(); // 背包容量&#xff0c;使用long防止溢出 int[] v …...

ps 人像学习

视频&#xff1a; 一ps快捷键 1.1 创建图层 ctrlj 1.2 放大缩小图片的大小 按住alt 滚轮 1.3 移动图片 空格 左键 1.4 撤回 ctrlz 二 精修的第一步是去除斑点&#xff0c;瑕疵&#xff0c; 2.1 污点修复画笔工具 新建一个图层&#xff0c;点击污点修复工具进行修复…...

【AI论文】MM-IFEngine:迈向多模态指令遵循

摘要&#xff1a;指令遵循&#xff08;IF&#xff09;能力衡量多模态大语言模型&#xff08;MLLM&#xff09;准确理解用户告诉他们的内容以及他们是否做得正确的能力。 现有的多模态指令训练数据很少&#xff0c;基准测试简单&#xff0c;指令原子化&#xff0c;对于要求精确输…...

【C++初学】课后作业汇总复习(五) 单目运算符重载

本题主要考察-构造函数的定义和操作符重载、友元函数等 根据后缀和程序样例输出&#xff0c;完成分数类和相关函数的定义&#xff0c; 输入&#xff1a; -6 12 8 -16 输出&#xff1a; 1/2 1/1 -1/2 / -1/2 - -1/2 0/1 输入&#xff1a; 3 7 2 6 输出&#xff1a; 1/…...

Python基础语法速通(自用笔记)

目录 # 输出直接print就行了 # 次方&#xff0c;除法&#xff0c;取整 # 定义变量直接写就可以&#xff0c;不用写类型 # 基础的while不用写&#xff08;&#xff09;和{}&#xff0c;直接用冒号即可&#xff0c;缩进对齐 # 这里的for循环直接用in就可以,意思是从...中一个…...