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

java后端开发day15--字符串(一)

在这里插入图片描述
(以下内容全部来自上述课程)

1.API

(Application Programming Interface 应用程序编程接口)

1.简单理解

简单理解:API就是别人已经写好的东西,我们不需要自己编写,直接使用即可。
Java API:指的就是JDK中提供的各种功能的Java类。
这些类将底层的实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可。

已经学习过的API:
Scanner 键盘录入
Random 随机数

2.API帮助文档

帮助开发人员更好的使用API和查询API的一个工具。
使用方法:

  1. 打开API帮助文档
  2. 点击显示,并找到索引下面的输入框
  3. 在输入框中输入类名并点击显示
  4. 查看类所在的包:java.util(比如),就需要导包
  5. 查看类的描述
  6. 查看构造方法
  7. 查看成员方法

2.字符串

1.String

java.lang(不需要导包).String类代表字符串,Java程序中的所有字符串文字(例如"abc")都为此类的对象。

注意点:
字符串的内容是不会发生改变的,它的对象在创建后不能被更改。
字符串拼接会产生一个新的字符串。

2.创建String对象的两种方式

1.直接赋值(常用)

String name = “尼古拉斯”;

2.new

public String() 创建空白字符串,不含任何内容
public String(String original) 根据传入的字符串,创建字符串对象
public String(char[ ] chs) 根据字符数组,创建字符串对象
public String(byte[ ] chs) 根据字节数组,创建字符串对象

package String;public class StringDemo1 {public static void main(String[] args) {//1.使用直接赋值的方式,创建一个字符串对象//"abc" 双引号引起来的内容,就是一个字符串String s1 = "abc";System.out.println(s1);//2.使用new的方式来获取一个字符串对象//空参构造:可以获取一个空白字符串对象,里面不含有任何内容String s2 = new String();System.out.println("@"+s2+"!");//传递一个字符串,根据传递的字符串,在堆内存中,创建一个字符串对象String s3 = new String("abc");System.out.println(s3);//传递一个字符数组,根据传递的字符数组,在堆内存中,创建一个字符串对象//需求:我要修改字符串的内容。 abc Qbc//abc--->>char[] chs = {'a','b','c'}--->{'Q','b','c'}---->>"Qbc"char[] chs = {'a','b','c'};String s4 = new String(chs);System.out.println(s4); //abc//传递一个字节数组,根据传递的字节数组,在堆内存中,创建一个字符串对象//应用场景:以后在网络当中传输的数据其实都是字节信息//我们一般要把字节信息进行转换,转成字符串,此时就要用到这个构造了。byte[] bys = {97,98,99};String s5 = new String(bys);System.out.println(s5); //abc}
}

3.String的内存分析

1.串池

只存储直接赋值的字符串
在这里插入图片描述

2.直接赋值的内存图

当使用双引号直接赋值时,系统会检查该字符串在串池中是否存在。
不存在:创建新的。
存在:复用。

在这里插入图片描述

3.new的内存图

每new一次就在堆里开辟一块新的小空间。
代码不复用。
在这里插入图片描述

4.字符串的比较

1.==号比的到底是什么?

基本数据类型比较的是数据值。
引用数据类型比较的是地址值。
也就是字符串的比较,字符串内内容相同的情况下,俩赋值必相等,一赋值一new不相等,俩new也不相等。

2.比较方法
  • boolean equals方法(要比较的字符串) 完全一样的结果才是true。否则为false
  • boolean equalslgnoreCase(要比较的字符串) 忽略大小写的比较
package String;public class StringDemo2 {public static void main(String[] args) {//1.创建两个字符串对象String s1 = new String("abc");String s2 = "Abc";//2.==号比较//比较基本数据类型:比较的是具体的值//比较引用数据类型:比较的是对象地址值System.out.println(s1 == s2); //falseSystem.out.println("--------");//3.equals()方法//比较基本数据类型:比较的是具体的值//比较引用数据类型:比较的是对象地址值System.out.println(s1.equals(s2)); //falseSystem.out.println("--------");//4.equalsIgnoreCase()方法:忽略大小写//忽略大小写只能是英文状态下的a 和 A//比较基本数据类型:比较的是具体的值//比较引用数据类型:比较的是对象地址值System.out.println(s1.equalsIgnoreCase(s2)); //trueSystem.out.println("--------");}
}

小拓展:
键盘录入和直接赋值的也是不一样的。
键盘录入的本质就是new。

结论:以后只要是想比较字符串的内容,就必须要用String里面的方法。

3.练习

1.用户登录

需求:已知正确的用户名和密码,请用程序实现模拟用户登录。
总共给三次机会,登录之后,给出相应的提示。

package String;import java.util.Scanner;public class StringDemo3 {public static void main(String[] args) {//读题拆解法//1.定义两个变量记录正确的用户名和密码String username = "admin";String password = "123456";//4.给三次机会,让用户登录for (int i = 0; i < 3; i++) {//2.键盘录入用户名和密码Scanner sc = new Scanner(System.in);System.out.println("请输入用户名:");String name = sc.next();System.out.println("请输入密码:");String pwd = sc.next();//3.比较//3.1先比较用户名//3.2再比较密码//3.3如果都正确,提示登录成功//3.4如果有一个错误,提示登录失败if (name.equals(username) && pwd.equals(password)) {System.out.println("登录成功");break;} else {if (i == 2) {System.out.println("您的账户已被锁定,请联系管理员");} else {System.out.println("登录失败,"+"您还剩"+(2-i)+"次机会");}}}}
}

2.遍历字符串

需求:键盘录入一个字符串,使用程序实现在控制台遍历该字符串

方法:

  • public char charAt(int index):根据索引返回字符
  • public int length():返回此字符串的长度
  • 数组的长度:数组名.length
  • 字符串的长度:字符串的对象.length()
package String;import java.util.Scanner;public class StringDemo4 {public static void main(String[] args) {//1.键盘录入一个字符串Scanner sc = new Scanner(System.in);System.out.println("请输入一个字符串:");String s = sc.next();//2.进行遍历for(int i = 0; i < s.length(); i++){//i 依次表示字符串的每一个索引char c = s.charAt(i);System.out.println(c);}}
}

3.统计字符次数

键盘录入一个字符串,统计该字符串中大写字母字符,小写字母字符,数字字符出现的次数。(不考虑其他字符)

package String;import java.util.Scanner;public class StringDemo5 {public static void main(String[] args) {//1.键盘录入一个字符串Scanner sc = new Scanner(System.in);System.out.println("请输入一个字符串:");String s = sc.next();//2.统计大写字母、小写字母、数字字符个数int bigCount = 0;int smallCount = 0;int numberCount = 0;for (int i = 0; i < s.length(); i++) {//i 表示字符串中的每一个索引char c = s.charAt(i);if (c >= 'A' && c <= 'Z') {//char类型的变量在参与计算的时候自动类型提升为int,查询ASCII表bigCount++;}else if (c >= 'a' && c <= 'z') {smallCount++;}else if (c >= '0' && c <= '9') {numberCount++;}}//3.输出结果System.out.println("大写字母有"+bigCount+"个");System.out.println("小写字母有"+smallCount+"个");System.out.println("数字字符有"+numberCount+"个");}
}

4.拼接字符串

定义一个方法,把int数组中的数据按照指定的格式拼接成一个字符串返回,调用该方法,并在控制台输出结果。
例如:
数组为int[] arr = {1,2,3};
执行后的输出结果为:[1,2,3]

package String;public class StringDemo6 {public static void main(String[] args) {int[] arr = {1,2,3,4,5};String s = arrayToString(arr);System.out.println(s);}//1.我要干嘛? 遍历数组并把数组拼接成字符串//2.需要什么? 数组//3.干完了需要返回么? 需要,返回一个拼接之后的字符串public static String arrayToString(int[] arr){if(arr == null){return null;}if(arr.length == 0){return "[]";}//当代码执行到这里表示什么?//表示数组不是mull,也不是长度为0的数组String s = "[";for(int i = 0; i < arr.length; i++){//i 索引 arr[i] 元素if(i == arr.length - 1){ //最后一个元素直接拼接s = s + arr[i];}else{s = s + arr[i] + ", ";  //不是最后一个元素拼接逗号}}s = s + "]";return s;}
}

5.反转

定义一个方法,实现字符串反转。
键盘录入一个字符串,调用该方法之后,在控制台输出结果。
例如:键盘录入abc,输出结果cba

package String;public class StringDemo7 {public static void main(String[] args) {String s = "abc";String s1 = reverse(s);System.out.println(s1);}//1.我要干嘛? 把字符串反转//2.需要什么? 字符串//3.干完了需要返回么? 需要,返回一个反转之后的字符串public static String reverse(String s) {//abcString result = "";for (int i = s.length()-1; i >= 0; i--) {//i 依次表示字符串的最后一个字符的索引,依次往前char c = s.charAt(i);result = result + c;}return result;}
}

6.金额转换(较难)

2135 (逆推)----->> 零佰零拾零万贰仟壹佰叁拾伍元---->>零零零贰壹叁伍------->>贰壹叁伍
查表法:
在这里插入图片描述
思路很重要!!!
在这里插入图片描述

package String;import java.util.Scanner;public class Cash {public static void main(String[] args) {//1.键盘输入一个金额Scanner sc = new Scanner(System.in);int money = sc.nextInt();while(true){//2.判断金额是否合法if(money >= 0 && money <= 9999999){break;} else{System.out.println("输入金额有误");}}//定义一个变量用来拼接最终的大写金额String result = "";//3.得到money里的每一位数字再转成中文while(true){//从右往左获取每一位数字int ge = money % 10;String s = digitToString(ge);//把转换之后的大写拼接到result中result = s + result;//去掉刚刚获取的这一位数字money = money / 10;//如果数字上的每一位都获取过了,那么money就为0了,此时循环结束if(money == 0){break;}}//4.在前面补全零int count = 7 - result.length();for(int i = 0; i < count; i++){result = "零" + result;} //零零零壹贰叁伍//5.插入单位//定义一个字符串数组表示单位String[] arr = {"佰", "拾", "万", "仟", "佰", "拾", "元"};//                零   零    零    贰    壹     叁    伍String result2 = "";//遍历result,依次得到每一位数字,然后跟单位拼接for(int i = 0; i < result.length() ; i++){char c = result.charAt(i);//把大写数字和单位拼接到一起result2 = result2+ c + arr[i];}//6.打印最终的结果System.out.println(result2);}//1.我要干嘛? 把金额转换为大写//2.需要什么? 金额//3.干完了需要返回么? 需要,返回一个大写的字符串public static String digitToString(int number) {//1.定义一个字符串数组表示大写金额的每一位String[] arr = {"零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"};//2.返回对应的大写return arr[number];}}

7.手机号屏蔽

13112349468 ----->> 131 **** 9468

方法:
String substring(int beginIndex,int endIndex) 截取
注意:包头不包尾,包左不包右
只有返回值才是截取的小串

String substring(int beginIndex) 截取到末尾

package String;public class StringDemo8 {public static void main(String[] args) {//1.获取一个手机号String phone = "13112349468";//2.截取前三位String s = phone.substring(0,3);//3.截取后四位String s1 = phone.substring(7);//4.拼接String result = s + "****" + s1;System.out.println(result);}
}

8.身份证号码信息查看

7~14位:出生年、月、日
17位:性别(奇数男,偶数女)

输出:
出生年月日:XXXX年X年X日
性别为:男/女

package String;public class StringDemo9 {public static void main(String[] args) {//1.定义一个字符串记录身份证号码String id = "11010119900307001X";//2.获取出生年月日String year = id.substring(6,10);String month = id.substring(10,12);String day = id.substring(12,14);//3.拼接String date = year + "年" + month + "月" + day + "日";System.out.println(date);//4.获取性别char gender = id.charAt(16); //'3' ----> 3//字符转换为数字//利用ASCII码表//'0' ---> 48//'1' ---> 49//'2' ---> 50//'3' ---> 51//...//'9' ---> 57int num = gender - 48;//5.判断奇偶性if(num % 2 == 0){System.out.println("女");} else{System.out.println("男");}}
}

9.游戏骂人敏感词替换

方法:
String replace(旧值,新值) 替换
注意点:只有返回值才是替换之后的结果

package String;public class StringDemo10 {public static void main(String[] args) {//1.获取到说的话String s = "你玩的很好,以后不要再玩了,TMD";//2.定义一个敏感词库String[] arr = {"TMD", "CNM", "SB"};//3.遍历敏感词库,依次跟要说的话比较for(int i = 0; i < arr.length; i++){//arr[i] 敏感词if(s.contains(arr[i])){s = s.replace(arr[i], "***");}}//4.打印替换之后的结果System.out.println(s);}
}

相关文章:

java后端开发day15--字符串(一)

&#xff08;以下内容全部来自上述课程&#xff09; 1.API &#xff08;Application Programming Interface 应用程序编程接口&#xff09; 1.简单理解 简单理解&#xff1a;API就是别人已经写好的东西&#xff0c;我们不需要自己编写&#xff0c;直接使用即可。 Java API&…...

C++STL容器之map的使用及复现

map 1. 关联式容器 vector、list、deque、forward_list(C11) 等STL容器&#xff0c;其底层为线性序列的数据结构&#xff0c;里面存储的是元素本身&#xff0c;这样的容器被统称为序列式容器。而 map、set 是一种关联式容器&#xff0c;关联式容器也是用来存储数据的&#xf…...

lvs的DR模式

基于Linux的负载均衡集群软件 LVS 全称为Linux Virtual Server,是一款开源的四层(传输层)负载均衡软件 Nginx 支持四层和七层(应用层)负载均衡 HAProxy 和Nginx一样,也可同时支持四层和七层(应用层)负载均衡 基于Linux的高可用集群软件 Keepalived Keepalived是Linux…...

FlutterWeb实战:07-自动化部署

Flutter Web 开发打包后&#xff0c;可以手动发布到服务器上&#xff0c;通过 nginx 来托管静态页面。本文将介绍如何将这一过程自动化。 整体思路 使用脚本自动化构建&#xff0c;然后使用 Docker 打包成镜像&#xff0c;最后部署在服务器上。 自动化构建 这里使用 GitLab-…...

剑指 Offer II 020. 回文子字符串的个数

comments: true edit_url: https://github.com/doocs/leetcode/edit/main/lcof2/%E5%89%91%E6%8C%87%20Offer%20II%20020.%20%E5%9B%9E%E6%96%87%E5%AD%90%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E4%B8%AA%E6%95%B0/README.md 剑指 Offer II 020. 回文子字符串的个数 题目描述 …...

vue中附件下载及打印功能

1.附件dom 注&#xff1a;fileList是由后台返回的附件数组&#xff0c;数组中包含附件名称fileName,附件地址url&#xff0c;附件id等信息 <el-form-item label"附件" style"width: 100% !important;" v-if"modelTypeborrowDetail"><d…...

Python(十九)实现各大跨境船公司物流查询数据处理优化

一、前言 之前已经实现了常用 跨境物流船司 基础信息查询功能&#xff0c;如下所示 实现各大跨境船公司[COSCO/ZIM/MSK/MSC/ONE/PIL]的物流信息查询&#xff1a;https://blog.csdn.net/Makasa/article/details/145484999?spm1001.2014.3001.5501 然后本章在其基础上做了一些…...

android 安装第三方apk自动赋予运行时权限

摘要&#xff1a;行业机使用场景点击运行时权限很麻烦&#xff0c;而随着android的演进&#xff0c;对于权限的管控越发严格。故本文通过对系统的修改实现第三方app在运行时直接获取全部权限。 通过属性ro.perms.force_grant控制功能开关。 Index: frameworks/base/services/…...

java8、9新特性

JAVA8 Lambda 表达式 (parameters) -> expression 或 (parameters) ->{ statements; } 提供了一种更为简洁的语法&#xff0c;尤其适用于函数式接口。相比于传统的匿名内部类&#xff0c;Lambda 表达式使得代码更为紧凑&#xff0c;减少了样板代码的编写。 它允许将函…...

程序诗篇里的灵动笔触:指针绘就数据的梦幻蓝图<9>

大家好啊&#xff0c;我是小象٩(๑ω๑)۶ 我的博客&#xff1a;Xiao Xiangζั͡ޓއއ 很高兴见到大家&#xff0c;希望能够和大家一起交流学习&#xff0c;共同进步。 这一节是对之前内容的修整 目录 一、传值调用和传址调用二、数组名的理解三、指针访问数组四、结尾 一…...

Java网络编程入门

网络编程是指通过计算机网络进行数据传输和通信的过程。在Java中&#xff0c;网络编程提供了一套强大的API&#xff0c;使得开发者能够轻松地创建网络应用程序。本文将介绍Java网络编程的基本概念和一些常用的类。 1.网络编程的基本概念 在网络编程中&#xff0c;我们通常需要…...

2.4 构建模块化应用

第4章&#xff1a;构建模块化应用 模块化应用是 JDK 9 的核心特性之一&#xff0c;通过模块化系统&#xff08;Project Jigsaw&#xff09;实现代码的强封装和显式依赖管理。本章详细讲解如何从零构建一个模块化应用&#xff0c;包括模块定义、编译、打包、运行及调试。 4.1 模…...

14.1 Auto-GPT 项目定位与价值解读:揭开自主智能体的神秘面纱

Auto-GPT 项目定位与价值解读:揭开自主智能体的神秘面纱 关键词:Auto-GPT 核心机制、自主任务分解、LangChain 智能体、持续自我优化、AGI 实践路径 一、为什么 Auto-GPT 能引爆技术圈? 1.1 从工具到员工的范式转移 维度传统AI系统Auto-GPT 智能体输入方式精确指令(“翻译…...

【Elasticsearch】分析器的构成

在Elasticsearch中&#xff0c;分析器&#xff08;Analyzer&#xff09;是一个处理文本数据的管道&#xff0c;它将输入的文本转换为一系列词元&#xff08;tokens&#xff09;&#xff0c;并可以对这些词元进行进一步的处理和规范化。分析器由以下三个主要组件构成&#xff1a…...

2025 年前端开发现状分析:卷疯了还是卷麻了?

一、前端现状&#xff1a;框架狂飙&#xff0c;开发者崩溃 如果你是个前端开发者&#xff0c;那么你大概率经历过这些场景&#xff1a; 早上打开 CSDN&#xff08;或者掘金&#xff0c;随便&#xff09;&#xff0c;发现又有新框架发布了&#xff0c;名字可能是 VueXNext.js 之…...

单例模式详解(Java)

单例模式详解(Java) 一、引言 1.1 概述单例模式的基本概念和重要性 单例模式是一种常用的软件设计模式,它确保一个类在整个应用程序中只有一个实例,并提供一个全局访问点来访问这个唯一实例。这种模式在资源管理、配置设置和日志记录等方面非常有用,因为它们通常只需要…...

后端面试题

以下是一些常见的后端面试题: 一、通用基础 请简述HTTP协议的工作原理。 答案: HTTP是基于请求 - 响应模型的协议。客户端(通常是浏览器)向服务器发送一个HTTP请求,请求包含请求行(包含请求方法,如GET、POST等、请求的URL和HTTP版本)、请求头(包含诸如浏览器类型、接…...

深入理解Linux网络随笔(一):内核是如何接收网络包的(上篇)

深入理解Linux网络随笔&#xff08;一&#xff09;&#xff1a;内核是如何接收网络包的&#xff08;上篇&#xff09; 1、TCP/IP模型概述 从Linux视角看&#xff0c;TCP/IP网络分层模型包括用户空间和内核空间。用户空间&#xff08;应用层&#xff09;负责HTTP、FTP等协议的…...

SQL-leetcode—1393. 股票的资本损益

1393. 股票的资本损益 Stocks 表&#xff1a; ---------------------- | Column Name | Type | ---------------------- | stock_name | varchar | | operation | enum | | operation_day | int | | price | int | ---------------------- (stock_name, operation_day) 是这张…...

热更图片方案

项目平常需要对线上一些图片资源修正&#xff0c;所以需要热更图片功能。 远端入口新增字段配json文件 {"1.1.22030303":{"sprite":{"assets/ui/common/images/acient_gold.png" : "https://aaaa.png","assets/ui/common/image…...

Flutter PIP 插件 ---- iOS Video Call

以下是一篇关于在 iOS 中实现画中画(PiP)功能的技术博客: iOS 画中画(PiP)功能实现指南 简介 画中画(Picture in Picture, PiP)是一项允许用户在使用其他应用时继续观看视频内容的功能。本文将详细介绍如何在 iOS 应用中实现 PiP 功能。 系统要求 iOS 15.0 及以上版本AVKi…...

本地部署DeepSeek开源大模型:从零开始的详细教程

友情提示&#xff1a;本文内容全部由银河易创&#xff08;https://ai.eaigx.com&#xff09;AI创作平台deepseek-reasoner模型生成&#xff0c;仅供参考。请根据具体情况和需求进行适当的调整和验证。 近年来&#xff0c;随着人工智能技术的飞速发展&#xff0c;大模型在各个领…...

java项目之基于SSM会议管理系统的设计与实现源码(ssm+mysql)

项目简介 基于SSM会议管理系统的设计与实现实现了以下功能&#xff1a; 基于SSM会议管理系统的设计与实现的主要使用者分为&#xff1a;管理员登录后修改个人的密码。用户管理中&#xff0c;对公司内的用户进行管理&#xff0c;包括会议管理员和员工&#xff0c;管理部门信息…...

PortSwigger——WebSockets vulnerabilities

文章目录 一、WebSockets二、Lab: Manipulating WebSocket messages to exploit vulnerabilities三、Lab: Manipulating the WebSocket handshake to exploit vulnerabilities四、Using cross-site WebSockets to exploit vulnerabilities4.1 跨站WebSocket劫持&#xff08;cro…...

STM32系统架构介绍

STM32系统架构 1. CM3/4系统架构2. CM3/4系统架构-----存储器组织结构2.1 寄存器地址映射&#xff08;特殊的存储器&#xff09;2.2 寄存器地址计算2.3 寄存器的封装 3. CM3/4系统架构-----时钟系统 STM32 和 ARM 以及 ARM7是什么关系? ARM 是一个做芯片标准的公司&#xff0c…...

智能GUI Agent是什么,有什么应用领域

智能GUI Agent是什么 研究背景与目的:GUI长期主导人机交互,LLM特别是多模态模型的出现,为GUI自动化带来变革,催生了基于LLM的GUI智能体。这些智能体可理解自然语言指令,处理复杂GUI元素并执行操作,改变了用户与软件交互方式。论文旨在梳理该领域发展脉络,剖析关键要素,…...

Python3操作MongoDB批量upsert

个人博客地址&#xff1a;Python3操作MongoDB批量upsert | 一张假钞的真实世界 代码如下&#xff1a; mongoClient MongoClient(mongodb://172.16.72.213:27017/) opsDb mongoClient.ops azScheduled opsDb.azScheduledFlowbulkOpers [] for flow in scheduledFlows.valu…...

3dgs 2025 学习笔记

CVPR 2024 3D方向总汇包含&#xff08;3DGS、三维重建、深度补全、深度估计、全景定位、表面重建和特征匹配等&#xff09;_cvpr2024-structure-awaresparse-viewx-ray3dreconstr-CSDN博客 https://github.com/apple/ml-hugs 3DGS COLMAP-Free 3D Gaussian Splatting ⭐code &…...

大模型笔记:pytorch实现MOE

0 导入库 import torch import torch.nn as nn import torch.nn.functional as F 1 专家模型 #一个简单的专家模型&#xff0c;可以是任何神经网络架构 class Expert(nn.Module):def __init__(self, input_size, output_size):super(Expert, self).__init__()self.fc nn.L…...

C#/.NET/.NET Core技术前沿周刊 | 第 25 期(2025年2.1-2.9)

前言 C#/.NET/.NET Core技术前沿周刊&#xff0c;你的每周技术指南针&#xff01;记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿&#xff0c;助力技术成长与视野拓宽。 欢迎投稿、推荐…...

package.json 文件配置

创建 Node.js 的配置文件 package.json npm init -y package.json 文件配置说明 配置说明示例name指定项目的名称&#xff0c;必须是小写字母&#xff0c;可以包含字母、数字、连字符&#xff08;-&#xff09;或下划线&#xff08;_&#xff09;&#xff0c;不能有特殊字符…...

相机模数转换

模拟图像是什么&#xff1f; 模拟图像是指连续变化的图像&#xff0c;它通常来源于现实世界的物理场景&#xff0c;并通过光学系统&#xff08;如相机镜头&#xff09;投射到感光介质上。模拟图像是连续的&#xff0c;这意味着它在空间和颜色值上都有无穷的细节。例如&#xf…...

mysql大数据量分页查询

一、什么是‌MySQL大数据量分页查&#xff1f; MySQL大数据量分页查‌是指在使用MySQL数据库时&#xff0c;将大量数据分成多个较小的部分进行显示&#xff0c;以提高查询效率和用户体验。分页查询通常用于网页或应用程序中&#xff0c;以便用户能够逐步浏览结果集。 二、为什…...

组织结构改革:激活企业活力的 “源头活水”

难以适应市场变化、内部沟通与协作不畅、决策效率低下、运营成本增加、人才流失严重、员工士气下降、战略目标难以实现……企业如何根据市场环境变化和自身发展需求&#xff0c;灵活调整组织框架&#xff0c;赋能企业的持续健康发展&#xff1f; 某国有投资建设集团旗下的二级…...

金融风控项目-1

文章目录 一. 案例背景介绍二. 代码实现1. 加载数据2. 数据处理3. 查询 三. 业务解读 一. 案例背景介绍 通过对业务数据分析了解信贷业务状况 数据集说明 从开源数据改造而来&#xff0c;基本反映真实业务数据销售&#xff0c;客服可以忽略账单周期&#xff0c;放款日期账单金…...

Java常用设计模式面试题总结(内容详细,简单易懂)

设计模式的分类 创建型模式&#xff1a;通过隐藏对象创建的细节&#xff0c;避免直接使用 new 关键字实例化对象&#xff0c;从而使程序在判断和创建对象时更具灵活性。常见的模式包括&#xff1a; 工厂模式抽象工厂模式单例模式建造者模式原型模式 结构型模式&#xff1a;通…...

【Elasticsearch】文本分析Text analysis概述

文本分析概述 文本分析使 Elasticsearch 能够执行全文搜索&#xff0c;搜索结果会返回所有相关的结果&#xff0c;而不仅仅是完全匹配的结果。 如果你搜索“Quick fox jumps”&#xff0c;你可能希望找到包含“A quick brown fox jumps over the lazy dog”的文档&#xff0c…...

ATF系统安全从入门到精通

CSDN学院课程连接&#xff1a;https://edu.csdn.net/course/detail/39573...

C# 上位机--变量

C# 上位机--变量 在 C# 上位机开发领域&#xff0c;变量是构建程序逻辑的基础元素之一。它就像是一个容器&#xff0c;用于存储各种类型的数据&#xff0c;从简单的数值到复杂的对象。正确理解和使用变量&#xff0c;对于开发出高效、稳定且易于维护的上位机程序至关重要。本文…...

π 的奥秘:如何用有理数逼近无理数?

本文将围绕有理数、无理数、连续统以及它们之间的深刻联系展开讨论&#xff0c;并结合具体的数学理论如康托尔区间套定理、戴德金分割、柯西施瓦茨不等式等&#xff0c;进行简要探讨 由于本文并未深入探讨&#xff0c;可能存在部分不严谨的地方&#xff0c;也欢迎各位进行纠正…...

LeetCode --- 436周赛

题目列表 3446. 按对角线进行矩阵排序 3447. 将元素分配给有约束条件的组 3448. 统计可以被最后一个数位整除的子字符串数目 3449. 最大化游戏分数的最小值 一、按对角线进行矩阵排序 直接模拟&#xff0c;遍历每一个斜对角线&#xff0c;获取斜对角线上的数字&#xff0c;排…...

绘制中国平安股价的交互式 K 线图

在本文中,探索如何使用 Python 的强大库进行股市数据分析与可视化。我们将以中国平安(股票代码:sh601318)为例,展示如何获取其股票数据,并绘制一张交互式 K 线图。 K 线图是股市分析中不可或缺的工具,它能够直观地显示股票的波动情况,包括开盘价、收盘价、最高价和最低…...

【ISO 14229-1:2023 UDS诊断全量测试用例清单系列:第二节】

ISO 14229-1:2023 UDS诊断服务测试用例全解析&#xff08;ECU复位0x11服务&#xff09; 作者&#xff1a;车端域控测试工程师 更新日期&#xff1a;2025-02-12 关键词&#xff1a;UDS诊断协议、ECU复位服务、0x11服务、ISO 14229-1:2023 二、ECU复位服务&#xff08;0x11服务&…...

Unity URP的2D光照简介

官网工程&#xff0c;包括2d光照&#xff0c;动画&#xff0c;动效介绍&#xff1a; https://unity.com/cn/blog/games/happy-harvest-demo-latest-2d-techniques https://docs.unity3d.com/6000.0/Documentation/Manual/urp/Lights-2D-intro.html 人物脸部光照细节和脚上的阴影…...

自学人工智能大模型,满足7B模型的训练和微调以及推理,预算3万,如何选购电脑

如果你的预算是 3万元人民币&#xff0c;希望训练和微调 7B 参数规模的人工智能大模型&#xff08;如 LLaMA、Mistral 等&#xff09;&#xff0c;你需要一台高性能的深度学习工作站。在这个预算范围内&#xff0c;以下是推荐的配置&#xff1a; 1. 关键硬件配置 (1) GPU (显卡…...

shell脚本自动安装MySQL8

环境&#xff1a;centos7版本&#xff1a;8.0.28安装包&#xff1a;mysql-8.0.28-linux-glibc2.12-x86_64.tar.xz 二进制包要求&#xff1a;安装包和shell脚本在同一目录下执行方式&#xff1a;sudo ./install_mysql8.sh #!/bin/bash# 定义MySQL安装目录和压缩包名称MYSQL_DIR…...

使用亚马逊针对 PyTorch 和 MinIO 的 S3 连接器进行模型检查点处理

2023 年 11 月&#xff0c;Amazon 宣布推出适用于 PyTorch 的 S3 连接器。适用于 PyTorch 的 Amazon S3 连接器提供了专为 S3 对象存储构建的 PyTorch 数据集基元&#xff08;数据集和数据加载器&#xff09;的实现。它支持用于随机数据访问模式的地图样式数据集和用于流式处理…...

DeepAR:一种用于时间序列预测的深度学习模型

介绍 DeepAR是一种基于递归神经网络&#xff08;RNN&#xff09;的时间序列预测模型&#xff0c;由亚马逊在2017年提出。它特别适用于处理多变量时间序列数据&#xff0c;并能够生成概率预测。DeepAR通过联合训练多个相关时间序列来提高预测性能&#xff0c;从而在实际应用中表…...

【无标题】《On Java中文版基础卷+进阶卷》书评

Java语言作为最热门的编程语言之一&#xff0c;关于Java语言的书更是数不胜数&#xff0c;而我选择这本《On Java中文版基础卷进阶卷》作为我学习Java语言的工具书。这本书的作者是《Java编程思想》的Bruce Eckel&#xff0c;《Java编程思想》在之前可谓是鼎鼎有名&#xff0c;…...

【鸿蒙开发】第二十九章 Stage模型-应用上下文Context、进程、线程

目录 1 Stage模型基本概念 1.1 开发流程 3 应用上下文Context的典型使用场景 3.1 获取应用文件路径 3.2 获取和修改加密分区 3.3 获取本应用中其他Module的Context 3.4 订阅进程内UIAbility生命周期变化 4 进程 4.1 概述 5 线程 5.1 线程类型 5.2 使用EventHub进行线…...