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

【Java篇】行云流水,似风分岔:编程结构中的自然法则

文章目录

  • Java 程序逻辑控制:顺序、分支与循环结构全面解析
    • 一、顺序结构
    • 二、分支结构
      • 2.1 if 语句
        • 2.1.1 基本语法
        • 2.1.2 if-else 语句
        • 2.1.3 if-else if-else 语句
      • 2.2 switch 语句
    • 三、循环结构
      • 3.1 while 循环
      • 3.2 break 语句
      • 3.3 continue 语句
      • 3.4 for 循环
    • 四、输入输出
      • 4.1 输出到控制台
      • 4.2 从键盘输入
    • 五、猜数字游戏
    • 六、总结与展望

Java 程序逻辑控制:顺序、分支与循环结构全面解析

💬 欢迎讨论:如果你在阅读过程中有任何疑问或想要进一步探讨的内容,欢迎在评论区留言!我们一起学习、一起成长。

👍 点赞、收藏与分享:如果你觉得这篇文章对你有帮助,记得点赞、收藏并分享给更多想了解 Java 编程的朋友!

🚀 继续学习之旅:在本篇文章中,我们将探讨 Java 程序的逻辑控制结构,包括顺序结构、分支结构以及循环结构。掌握这些基本概念将帮助你更好地理解 Java 编程,提升代码的可读性与灵活性。


一、顺序结构

顺序结构是最基础的控制结构,程序按照书写的顺序逐行执行,执行过程不发生跳转。每一行代码的执行顺序与它们在程序中的排列顺序相同。

System.out.println("开始程序");
System.out.println("执行步骤1");
System.out.println("执行步骤2");

在没有任何分支和循环结构时,程序的执行会按照顺序逐步进行。


二、分支结构

分支结构允许程序根据不同条件执行不同的代码块。Java 提供了 if 语句和 switch 语句来实现这一功能。

2.1 if 语句

if 语句用于根据布尔表达式的结果决定是否执行某一代码块。

2.1.1 基本语法
if (条件表达式) {// 条件为 true 时执行的代码
}
2.1.2 if-else 语句
if (条件表达式) {// 条件为 true 时执行的代码
} else {// 条件为 false 时执行的代码
}
2.1.3 if-else if-else 语句

当有多个条件时,可以使用 else if 来判断不同的条件。

if (score >= 90) {System.out.println("优秀");
} else if (score >= 80) {System.out.println("良好");
} else {System.out.println("不及格");
}

2.2 switch 语句

switch 语句允许根据不同的常量值执行不同的代码块。

switch (day) {case 1:System.out.println("星期一");break;case 2:System.out.println("星期二");break;default:System.out.println("无效的星期");
}
  • 多个case后的常量值不可以重复

  • switch的括号内只能是以下类型的表达式:

    • 基本类型:byte、char、short、int,注意不能是long类型
    • 引用类型:String常量串、枚举类型
  • break别忘记加在合适的位置

switch(num) {case 1.0:System.out.println("hehe");break;case 2.0:System.out.println("haha");break;
}
// 编译出错
Test.java:4: 错误: 不兼容的类型:double转换到int可能会有损失
switch(num) {
^
1 个错误

三、循环结构

循环结构可以让某一段代码重复执行,直到满足特定的条件。Java 中常用的循环结构有 whilefordo-while

3.1 while 循环

while 循环在满足条件时重复执行一段代码。

int i = 0;
while (i < 10) {System.out.println(i);i++;
}
  1. 代码示例1:计算 1! + 2! + 3! + 4! + 5!
int num = 1;
int sum = 0;
// 外层循环负责计算阶乘的和
while (num <= 5) {int factorResult = 1;int tmp = 1;// 里层循环负责完成阶乘的计算while (tmp <= num) {factorResult *= tmp;tmp++;}sum += factorResult;num++;
}
System.out.println("sum = " + sum);
  1. 代码示例2:计算 1 - 100 的和
int n = 1;
int result = 0;
while (n <= 100) {result += n;n++;
}
System.out.println(result);

执行结果
5050

  1. 代码示例3:计算 5 的阶乘
int num = 1;
int result = 1;
while (num <= 5) {result *= num;num++;
}
System.out.println(result);

执行结果
120

  1. 代码示例4:计算 1! + 2! + 3! + 4! + 5!
int num = 1;
int sum = 0;
// 外层循环负责计算阶乘的和
while (num <= 5) {int factorResult = 1;int tmp = 1;// 里层循环负责完成阶乘的计算while (tmp <= num) {factorResult *= tmp;tmp++;}sum += factorResult;num++;
}
System.out.println("sum = " + sum);

以下是你提供的图像内容的提取和分析:


while 循环使用中的常见问题与注意事项

注意事项:

  1. if 类似,while 语句后面的语句可以不写 {},但是不写的时候只能支持一条语句,建议还是加上 {} 来提高代码的可读性和可维护性。
  2. if 类似,while 后面的 {} 建议和 while 写在同一行,以确保代码结构的整洁。
  3. if 类似,while 后面不要多写分号,否则可能导致循环条件 num <= 10 恒成立,进而导致代码死循环。
int num = 1;
while (num <= 10); {System.out.println(num);num++;
}

执行结果:

[无任何输出,程序死循环]

解释:

  • 在上述例子中,若在 while 循环条件后面不小心加了一个多余的分号,while 语句会变成一个空语句,导致死循环的发生。

3.2 break 语句

break 用于提前结束循环。

int i = 0;
while (i < 10) {if (i == 5) {break;  // 当 i 等于 5 时跳出循环}System.out.println(i);i++;
}

3.3 continue 语句

continue 用于跳过当前的循环,直接进入下一次循环。

int i = 0;
while (i < 10) {if (i == 5) {i++;continue;  // 跳过当前循环}System.out.println(i);i++;
}

3.4 for 循环

for 循环常用于已知循环次数的场景。

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

四、输入输出

4.1 输出到控制台

Java 提供了 System.out.println()System.out.print()System.out.printf() 方法用于不同格式的输出。

System.out.println("Hello, World!");
System.out.printf("Formatted Number: %.2f\n", 3.14159);
  1. 格式化输出符号说明
    这是一个关于格式化输出符号的表格,展示了不同的转换符号及其对应的类型和示例:
转换符号类型举例
d十进制整数("%d", 100) 输出:100
x十六进制整数("%x", 100) 输出:64
o八进制整数("%o", 100) 输出:144
f定点浮点数("%f", 100f) 输出:100.000000
e指数浮点数("%e", 100f) 输出:1.000000e+02
g通用浮点数("%g", 100f) 输出:100.000
a十六进制浮点数("%a", 100) 输出:0x1.9p6
s字符串("%s", 100) 输出:100
c字符("%c", '1') 输出:1
b布尔值("%b", 100) 输出:true
h散列码("%h", 100) 输出:64
%百分号("%.2f%%", 2/7f) 输出:0.29%

  1. 使用 Scanner 获取输入并处理数据
    以下是一个简单的例子,展示如何使用 Scanner 类从用户获取输入并输出格式化结果:
import java.util.Scanner;  // 需要导入 util 包Scanner sc = new Scanner(System.in);
System.out.println("请输入你的姓名:");
String name = sc.nextLine();
System.out.println("请输入你的年龄:");
int age = sc.nextInt();
System.out.println("请输入你的工资:");
float salary = sc.nextFloat();
System.out.println("你的信息如下:");
System.out.println("姓名: " + name + "\n年龄: " + age + "\n工资: " + salary);
sc.close(); // 注意, 要记得调用关闭方法

执行结果:

请输入你的姓名:
张三
请输入你的年龄:
18
请输入你的工资:
1000
你的信息如下:
姓名: 张三
年龄: 18
工资: 1000.0

  1. 使用 Scanner 循环读取多个数据并计算平均值

这是一个使用 Scanner 类循环读取多个整数并计算总和与平均值的例子:

Scanner sc = new Scanner(System.in);
int sum = 0;
int num = 0;
while (sc.hasNextInt()) {int tmp = sc.nextInt();sum += tmp;num++;
}
System.out.println("sum = " + sum);
System.out.println("avg = " + sum / num);
sc.close();

执行结果:

10
40.0
50.5
^Z
sum = 150.5
avg = 30.1

注意事项:

  1. 当循环输入多个数据时,可以使用 ctrl + z 来结束输入(Windows 上使用 ctrl + z,Linux / Mac 上使用 ctrl + d)。
  2. 使用 Scanner 类进行输入时,要特别注意输入数据的类型和结束符号。
  • println 输出的内容自带 \n, print 不带 \n
  • printf 的格式化输出方式和 C 语言的 printf 是基本一致的.

4.2 从键盘输入

使用 Scanner 类可以从键盘读取用户输入。

Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数字:");
int num = sc.nextInt();
System.out.println("你输入的数字是:" + num);
sc.close();

五、猜数字游戏

在本节中,我们将使用条件语句和循环结构来完成一个简单的猜数字游戏。

系统自动生成一个随机整数(1-100), 然后由用户输入一个猜测的数字. 如果输入的数字比该随机数小, 提示 “低了”, 如果输入的数字比该随机数大, 提示 “高了” , 如果输入的数字和随机数相等, 则提示 “猜对了” .

import java.util.Random;
import java.util.Scanner;public class GuessNumberGame {public static void main(String[] args) {Random random = new Random();Scanner sc = new Scanner(System.in);int toGuess = random.nextInt(100) + 1;while (true) {System.out.println("请输入一个数字(1-100):");int guess = sc.nextInt();if (guess < toGuess) {System.out.println("低了");} else if (guess > toGuess) {System.out.println("高了");} else {System.out.println("猜对了!");break;}}sc.close();}
}

六、总结与展望

本篇文章介绍了 Java 中的逻辑控制结构,包括顺序结构、分支结构(if 语句和 switch 语句)以及循环结构(whilefordo-while 循环)。通过掌握这些基本控制结构,你将能够编写更加灵活且高效的 Java 程序。

接下来的文章,我们将深入探讨更复杂的编程概念,如数组、集合以及方法的使用,帮助你更好地实现更复杂的逻辑。继续关注,一起走向更高的编程境界!


以上就是关于【Java篇】行云流水,似风分岔:编程结构中的自然法则数据类型与变量:窥见程序的天地万象内容啦,各位大佬有什么问题欢迎在评论区指正,或者私信我也是可以的啦,您的支持是我创作的最大动力!❤️
在这里插入图片描述

相关文章:

【Java篇】行云流水,似风分岔:编程结构中的自然法则

文章目录 Java 程序逻辑控制&#xff1a;顺序、分支与循环结构全面解析一、顺序结构二、分支结构2.1 if 语句2.1.1 基本语法2.1.2 if-else 语句2.1.3 if-else if-else 语句 2.2 switch 语句 三、循环结构3.1 while 循环3.2 break 语句3.3 continue 语句3.4 for 循环 四、输入输…...

代码块与设计模式

文章目录 1.代码块1.1基本介绍基本语法 1.2代码块的好处和案例演示1.3代码块使用注意事项和细节讨论!!! 2.单例设计模式2.1什么是设计模式2.2什么是单例模式2.2.1饿汉式2.2.2懒汉式2.2.3比较 1.代码块 1.1基本介绍 代码化块又称为初始化块,属于类中的成员[即是类的一部分]&am…...

要登录的设备ip未知时的处理方法

目录 1 应用场景... 1 2 解决方法&#xff1a;... 1 2.1 wireshark设置... 1 2.2 获取网口mac地址&#xff0c;wireshark抓包前预过滤掉自身mac地址的影响。... 2 2.3 pc网口和设备对接... 3 2.3.1 情况1&#xff1a;... 3 2.3.2 情…...

CentOS 系统安装 docker 以及常用插件

博主用的的是WindTerm软件链接的服务器&#xff0c;因为好用 1.链接上服务器登入后&#xff0c;在/root/目录下 2.执行以下命令安装docker sudo yum install -y yum-utilssudo yum-config-manager \--add-repo \https://download.docker.com/linux/centos/docker-ce.reposudo…...

统计字符(字符串)(gets与fgets的区别)

统计字符 #include<stdio.h> #include<string.h> int main(){char str1[5],str2[80];while(gets(str1)){if(strcmp(str1,"#")0)break;gets(str2);for(int i0;i<strlen(str1);i){int sum0;for(int j0;j<strlen(str2);j){if(str1[i]str2[j])sum;}p…...

Node.js REPL 深入解析

Node.js REPL 深入解析 引言 Node.js 作为一种流行的 JavaScript 运行环境,在服务器端开发中扮演着重要角色。REPL(Read-Eval-Print Loop,读取-求值-打印循环)是 Node.js 的一个核心特性,它允许开发者在一个交互式环境中执行 JavaScript 代码。本文将深入探讨 Node.js R…...

【测试语言基础篇】Python基础之List列表

一、Python 列表(List) 序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置&#xff0c;或索引&#xff0c;第一个索引是0&#xff0c;第二个索引是1&#xff0c;依此类推。 Python有6个序列的内置类型&#xff0c;但最常见的是列表和元组。序列都可…...

中山六院团队发表可解释多模态融合模型Brim,可以在缺少分子数据时借助病理图像模拟生成伪基因组特征|顶刊解读·25-02-14

小罗碎碎念 在癌症诊疗领域&#xff0c;精准预测患者预后对临床决策意义重大。传统的癌症分期系统&#xff0c;如TNM分期&#xff0c;因无法充分考量肿瘤异质性&#xff0c;难以准确预测患者的临床结局。而基于人工智能的多模态融合模型虽有潜力&#xff0c;但在实际临床应用中…...

《基於Python的网络爬虫抓包技术研究与应用》

## 摘要 本文探讨了基于Python的网络爬虫抓包技术及其应用。随着互联网数据的快速增长&#xff0c;网络爬虫技术在数据采集和分析中扮演着越来越重要的角色。本研究首先介绍了网络爬虫的基本概念和Python在爬虫开发中的优势&#xff0c;然后深入分析了抓包技术的原理和常用工具…...

从零开始探索C++游戏开发:性能、控制与无限可能

一、为何选择C开发游戏&#xff1f; 在虚幻引擎5渲染的次世代画面背后&#xff0c;在《巫师3》的庞大开放世界中&#xff0c;在《毁灭战士》的丝滑60帧战斗里&#xff0c;C始终扮演着核心技术角色。这门诞生于1983年的语言&#xff0c;至今仍占据着游戏引擎开发语言使用率榜首…...

TypeScript 高级类型 vs JavaScript:用“杂交水稻”理解类型编程

如果把 JavaScript 比作乐高积木&#xff0c;TypeScript 就是一套智能积木系统。本文将用最生活化的比喻&#xff0c;带你理解 TypeScript 那些看似复杂的高级类型。 一、先看痛点&#xff1a;JavaScript 的“薛定谔类型” // 场景&#xff1a;用户信息处理 function getUserI…...

几款可用于绘制工艺原理图的开源框架

一、LogicFlow 由滴滴团队开发的开源流程图框架&#xff0c;支持高度定制的工艺原理图绘制。 • 核心特性&#xff1a; • 提供拖拽式界面和丰富的节点类型&#xff08;矩形、圆形、多边形等&#xff09;&#xff0c;支持自定义节点形状、样式和交互逻辑。 • 支持插件扩展&am…...

STM32如何精准控制步进电机?

在工业自动化、机器人控制等场合&#xff0c;步进电机以其高精度、开环控制的特性得到了广泛应用。而在嵌入式系统中&#xff0c;使用STM32进行步进电机的精确控制&#xff0c;已成为开发者的首选方案之一。 本文将从嵌入式开发者的角度&#xff0c;深入探讨如何基于STM32 MCU…...

Go语言入门基础详解

一、语言历史背景 Go语言由Google工程师Robert Griesemer、Rob Pike和Ken Thompson于2007年设计&#xff0c;2009年正式开源。设计目标&#xff1a; 兼具Python的开发效率与C的执行性能内置并发支持&#xff08;goroutine/channel&#xff09;简洁的类型系统现代化的包管理跨…...

WPF窗口读取、显示、修改、另存excel文件——CAD c#二次开发

效果如下&#xff1a; using System.Data; using System.IO; using System.Windows; using Microsoft.Win32; using ExcelDataReader; using System.Text; using ClosedXML.Excel;namespace IfoxDemo {public partial class SimpleWindow : Window{public SimpleWindow(){Initi…...

Ubuntu 服务器安装 Python 环境 的详细指南

以下是 在 Ubuntu 上安装 Python 3.10 的详细步骤&#xff08;兼容 Ubuntu 20.04/22.04&#xff09;&#xff1a; 方法一&#xff1a;通过 PPA 仓库安装&#xff08;推荐&#xff09; 1. 添加 deadsnakes PPA sudo apt update sudo apt install software-properties-common s…...

鸿蒙next 多行文字加图片后缀实现方案

需求 实现类似iOS的YYLabel之类的在文字后面加上图片作为后缀的样式&#xff0c;多行时文字使用…省略超出部分&#xff0c;但必须保证图片的展现。 系统方案 在当前鸿蒙next系统提供的文字排版方法基本没有合适使用的接口&#xff0c;包括imagespan和RichEditor,根据AI的回…...

STM32---FreeRTS队列集

一、简介 一个队列只允许任务间传递的消息为同一种数据类型&#xff0c;如果需要在任务间传递不同数据类型的消息时&#xff0c;那么就可以使用队列集 &#xff01; 作用&#xff1a;用于对多个队列或信号量进行“监听”&#xff0c;其中不管哪一个消息到来&#xff0c;都可让…...

oracle11.2.0.4 RAC 保姆级静默安装(二) DB数据库软件

1.响应文件配置 [rootdb11g1 software]# su - oracle [oracledb11g1 ~]$ cd /software/database/ [oracledb11g1 database]$ cd response/ [oracledb11g1 response]$ vi db_install.rsp oracle.install.optionINSTALL_DB_SWONLY ORACLE_HOSTNAMEdb11g1 UNIX_GROUP_NAME…...

用python代码将excel中的数据批量写入Json中的某个字段,生成新的Json文件

需求 需求&#xff1a; 1.将execl文件中的A列赋值给json中的TrackId&#xff0c;B列赋值给json中的OId 要求 execl的每一行&#xff0c;对应json中的每一个OId json 如下&#xff1a; {"List": [{"BatchNumber": "181-{{var}}",// "Bat…...

【每日学点HarmonyOS Next知识】状态变量、动画UI残留、Tab控件显示、ob前缀问题、文字背景拉伸

1、HarmonyOS 怎么用一个变量观察其他很多个变量的变化&#xff1f; 有一个提交按钮的颜色&#xff0c;需要很多个值非空才变为红色&#xff0c;否则变为灰色&#xff0c;可不可以用一个变量统一观察这很多个值&#xff0c;去判断按钮该显示什么颜色&#xff0c;比如Button().…...

【第五节】windows sdk编程:windows 控件基础

目录 一、控件概述 二、标准控件 三、通用控件 四、控件的创建 五、控件风格 六、控件相关的消息 6.1 控件控制消息 6.2 控件通知消息 一、控件概述 控件是 Windows 系统内置的窗口类&#xff0c;它们只能是某个窗口的子窗口。因此&#xff0c;创建控件时必须使用 WS_C…...

架构师论文《论云原生架构及其应用》

【摘要】 2022年3月&#xff0c;我作为系统架构师参与了某大型零售企业“智能化供应链管理平台”项目的设计与实施工作。该平台旨在整合企业分散在不同区域的仓储、物流、库存及订单系统&#xff0c;构建统一管理的云原生架构&#xff0c;以应对业务季节性峰值带来的弹性伸缩需…...

Centos 7 安装达梦数据库

一、环境准备 1. 确认操作系统的版本和数据库的版本是否一致 cat /etc/redhat-release 2. 关闭防火墙 查看防火墙状态 firewall-cmd --state 停止firewall systemctl stop firewalld.service 禁止firewall开机启动 systemctl disable firewalld.service 3. 修改文件l…...

46.全排列

46.全排列 力扣题目链接 给定一个不含重复数字的数组 nums &#xff0c;返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 示例 1&#xff1a; 输入&#xff1a;nums [1,2,3] 输出&#xff1a;[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]示例 2&#xff1a…...

RabbitMQ (Java)学习笔记

目录 一、概述 ①核心组件 ②工作原理 ③优势 ④应用场景 二、入门 1、docker 安装 MQ 2、Spring AMQP 3、代码实现 pom 依赖 配置RabbitMQ服务端信息 发送消息 接收消息 三、基础 work Queue 案例 消费者消息推送限制&#xff08;解决消息堆积方案之一&#…...

2-002:MySQL 索引的最左前缀匹配原则是什么?

MySQL 索引的最左前缀匹配原则 最左前缀匹配原则&#xff08;Leftmost Prefix Matching&#xff09; 是指&#xff1a; 当 查询使用了复合索引&#xff08;联合索引&#xff09; 时&#xff0c;MySQL 会优先匹配索引的 最左列&#xff0c;然后逐步向右匹配&#xff0c;直到遇到…...

【Python 数据结构 15.哈希表】

目录 一、哈希表的基本概念 1.哈希表的概念 2.键值对的概念 3.哈希函数的概念 4.哈希冲突的概念 5.常用的哈希函数 Ⅰ、直接定址法 Ⅱ、平方取中法 Ⅲ、折叠法 Ⅳ、除留余数法 Ⅴ、位与法 6.哈希冲突的解决方案 Ⅰ、开放定址法 Ⅱ、链地址法 7.哈希表的初始化 8.哈希表的元素插…...

校园安全用电怎么保障?防触电装置来帮您

引言 随着教育设施的不断升级和校园用电需求的日益增长&#xff0c;校园电力系统的安全性和可靠性成为了学校管理的重要课题。三相智能安全配电装置作为一种电力管理设备&#xff0c;其在校园中的应用不仅能够提高电力系统的安全性&#xff0c;还能有效保障师生的用电安全&am…...

疗养院管理系统设计与实现(代码+数据库+LW)

摘 要 传统办法管理信息首先需要花费的时间比较多&#xff0c;其次数据出错率比较高&#xff0c;而且对错误的数据进行更改也比较困难&#xff0c;最后&#xff0c;检索数据费事费力。因此&#xff0c;在计算机上安装疗养院管理系统软件来发挥其高效地信息处理的作用&#xf…...

基于 Redis Stream 实现消息队列功能

好长时间没更新了。。。。。。 背景&#xff1a;举个例子在某个接口执行完成后只需要前半段返回结果&#xff0c;后半段可能是日志记录、下游系统调用等功能的情况下&#xff0c;将耗时的消息进行异步发送就显得很有必要&#xff0c;这时就有很多种选择&#xff0c;单体项目甚至…...

单元测试、系统测试、集成测试、回归测试的步骤、优点、缺点、注意点梳理说明

单元测试、系统测试、集成测试、回归测试的梳理说明 单元测试 步骤&#xff1a; 编写测试用例&#xff0c;覆盖代码的各个分支和边界条件。使用测试框架&#xff08;如JUnit、NUnit&#xff09;执行测试。检查测试结果&#xff0c;确保代码按预期运行。修复发现的缺陷并重新测…...

深入理解 HTML 中的<div>和元素:构建网页结构与样式的基石

一、引言 在 HTML 的世界里&#xff0c;<div>和元素虽看似普通&#xff0c;却扮演着极为关键的角色。它们就像网页搭建过程中的万能积木&#xff0c;能够将各种 HTML 元素巧妙地组合起来&#xff0c;无论是构建页面布局&#xff0c;还是对局部内容进行样式调整&#xff…...

网络安全信息收集[web子目录]:dirsearch子目录爆破全攻略以及爆破字典结合

目录 一、dirsearch 工具详细使用攻略 1. 安装 前提条件 安装步骤 可选&#xff1a;直接下载预编译版本 2. 基本用法 命令格式 参数说明 示例 3. 核心功能与高级用法 3.1 多线程加速 3.2 自定义字典 3.3 递归扫描 3.4 过滤响应 3.5 添加请求头 3.6 代理支持 3…...

Mybaties批量操作

1、批量插入 <!--批量操作-插入--><!-- 相当于INSERT INTO t_goods (c1,c2,c3) VALUES (a1,a2,a3),(b1,b2,b3),(d1,d2,d3),...--><insert id"batchInsert" parameterType"java.util.List">INSERT INTO t_goods (title,sub_title,origina…...

27.卷2的答案

CSP-J离我们不远了&#xff0c;加加油啦&#xff01; 1.堆排序最坏时间复杂度是&#xff1f; 解析&#xff1a;平时多多练习可知&#xff0c;最坏时间复杂度是O(n log n)。 2.哪条能将s中的数值保留一位&#xff0c;并将第二位四舍五入&#xff1f; 解析&#xff1a;经过试…...

【 Manus平替开源项目】

文章目录 Manus平替开源项目1 OpenManus1.1 简介1.2 安装教程1.3 运行 2 OWL2.1 简介2.2 安装教程2.3 运行 3 OpenHands&#xff08;原OpenDevin&#xff09;3.1 简介3.2 安装教程和运行 Manus平替开源项目 1 OpenManus 1.1 简介 开发团队: MetaGPT 核心贡献者&#xff08;5…...

【WEB APIs】DOM-事件基础

目录 1. 事件监听&#xff08;绑定&#xff09; 案例—关闭广告 案例-随机点名 2. 事件类型 2.1 鼠标事件 2.2 焦点事件 2.3 文本事件 3. 事件对象 案例—评论回车发布 4. 环境对象 5. 回调函数 6. 综合案例—tab栏切换 1. 事件监听&#xff08;绑定&#xff09; …...

66.Harmonyos NEXT 图片预览组件使用指南

温馨提示&#xff1a;本篇博客的详细代码已发布到 git : https://gitcode.com/nutpi/HarmonyosNext 可以下载运行哦&#xff01; Harmonyos NEXT 图片预览组件使用指南 文章目录 Harmonyos NEXT 图片预览组件使用指南效果预览一、组件使用概述1. 组件功能特点2. 组件依赖关系 二…...

linux系统安装和激活conda

安装 wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.shbash ./Miniconda3-latest-Linux-x86_64.sh回车到最后按照输入yes&#xff0c;之后按提示操作。 激活 conda activate如果没有反应或者返回&#xff1a; bash: conda: command not found则…...

Java 集合框架大师课:集合框架的暗黑料理(六)

&#x1f52e;Java 集合框架大师课&#xff1a;集合框架的暗黑料理&#xff08;六&#xff09;——弱引用与幽灵队列 第一章 弱引用&#xff1a;Java世界的塑料兄弟情 &#x1f494; 四大引用类型生死簿 // 四类引用生死实验 Object strongObj new Object(); …...

LVI-SAM、VINS-Mono、LIO-SAM算法的阅读参考和m2dgr数据集上的复现(留作学习使用)

ROS一键安装参考&#xff1a; ROS的最简单安装——鱼香一键安装_鱼香ros一键安装-CSDN博客 opencv官网下载4.2.0参考&#xff1a;https://opencv.org/releases/page/3/ nvidia驱动安装:ubuntu18.04 安装显卡驱动 - 开始战斗 - 博客园 cuda搭配使用12 cuda安装1&#xff1a;Ub…...

京鲁医疗健康专家委员会聊城专家团成立

3月13日由京鲁医疗健康专家委员会指导&#xff0c;聊城市委人才工作领导小组办公室、聊城市卫生健康委员会、聊城市人才引进服务中心主办的"智链医脉&#xff0e;新启未来"聊城卫生健康产才共融发展交流会在北京人卫酒店召开。会上&#xff0c;京鲁医疗健康专家委员会…...

MySQL的事务机制

事务 事务概念&#xff1a;事务是一个完整的操作单元&#xff0c;不可分割&#xff0c;事务中的操作要么全部成功&#xff0c;要么全部失败。 1. 事务特性 ACID 1.1 原子性&#xff08;A&#xff09; 一个事务中所有操作是不能被分割的&#xff0c;要么所有的操作都成功&am…...

30、Vuex 为啥可以进行缓存处理

Vuex 状态管理基础与缓存的关联 Vuex 的核心概念&#xff1a; Vuex 主要由五个部分组成&#xff1a;state、mutations、actions、getters和modules。其中&#xff0c;state是存储数据的地方&#xff0c;类似于一个全局的数据仓库。在这个菜谱 APP 的例子中&#xff0c;缓存的数…...

OpenAI Agents SDK 中文文档 中文教程 (5)

英文文档原文详见 OpenAI Agents SDKhttps://openai.github.io/openai-agents-python/ 本文是OpenAI-agents-sdk-python使用翻译软件翻译后的中文文档/教程。分多个帖子发布&#xff0c;帖子的目录如下&#xff1a; (1) OpenAI 代理 SDK&#xff0c; 介绍及快速入门 (2)Open…...

如何处理PHP中的文件上传错误

如何处理PHP中的文件上传错误 在Web开发中&#xff0c;文件上传是一个常见的功能需求。然而&#xff0c;文件上传过程中可能会遇到各种错误&#xff0c;如文件大小超出限制、文件类型不被允许、上传过程中断等。为了确保用户能够顺利上传文件&#xff0c;并且开发者能够有效地…...

mac安装python没有环境变量怎么办?zsh: command not found: python

在mac电脑上,下载Python安装包进行安装之后,在终端中,输入python提示: zsh: command not found: python 一、原因分析 首先,这个问题不是因为python没有安装成功的原因,是因为python安装的时候,没有为我们添加环境变量导致的,所以我们只需要,在.zshrc配置文件中加上环…...

湿大气校正效应

目的 修正由于大气中的水汽对雷达波传播速度的影响&#xff0c;以提高海面高度测量的准确性&#xff0c;有时候也叫做对流层校正。水汽的时空变化复杂&#xff0c;难以直接通过气象模型准确预测。水汽的折射作用使雷达信号的传播速度减慢&#xff0c;从而导致测量的海面高度虚增…...

算法系列之回溯算法求解数独及所有可能解

有没有对数独感兴趣的朋友呢&#xff1f;数独作为一款经典的逻辑游戏&#xff0c;其目标是在一个9x9的方格中填入数字1至9&#xff0c;确保每一行、每一列以及每一个3x3的子网格中都包含这些数字且不重复。尽管数独的规则看似简单&#xff0c;但编写一个能够自动求解数独的程序…...