- 博客(61)
- 资源 (1)
- 收藏
- 关注
原创 美国CPI与核心CPI的统计计算方法、联系与区别已经对市场的影响
由美国劳工统计局(Bureau of Labor Statistics, BLS)每月收集数据,覆盖约 **23,000 家零售商店、服务提供商** 和 **50,000 户家庭** 的消费支出信息。市场预期美联储更大幅度加息,导致股市和债市双双承压。| **高通胀(过热经济)** | >3%-4% | >2%-3% | 通胀压力上升,美联储可能逐步加息或缩减资产负债表。| **定义** | 衡量所有消费者商品和服务的价格变化,包括食品和能源 | 剔除波动性较大的食品和能源后的价格变化 |
2025-01-16 19:50:06
1025
原创 人工智能的发展历程与未来展望
例如,2018年,谷歌的AI项目“Maven”引发了广泛争议,该项目利用人工智能技术帮助美国国防部分析无人机视频,这不仅触及了隐私和安全的敏感问题,也引发了关于AI在军事领域应用的伦理讨论。此外,随着深度学习技术在医疗领域的应用,如IBM的Watson在癌症治疗建议上的应用,人们开始担忧AI决策的透明度和可解释性,以及这些决策可能对患者产生的影响。然而,尽管这一时期的研究成果令人瞩目,但受限于当时的计算能力与理论局限,AI技术尚未能够实现广泛的实际应用,这为后来的AI寒冬埋下了伏笔。
2024-12-27 14:13:43
1709
原创 Spring Boot 项目的默认推荐目录结构详解
Spring Boot 项目的默认推荐目录结构是遵循和,旨在提高代码的可维护性和清晰度,同时便于扩展。
2024-12-16 21:18:28
941
原创 springboot常用的请求参数的接收方式详解
用于查询参数。:用于路径参数。:用于请求体,常用于接收 JSON、XML 等格式的数据。:用于将请求参数绑定到 JavaBean 中。:用于接收请求头数据。:用于接收 Cookie 值。:用于处理上传的文件和表单字段。集合类型的:用于接收多个相同名称的参数。params 属性:用于限制特定查询参数的接收。这些方式可以根据不同的需求选择使用,灵活地处理 Spring Boot 中的请求参数。
2024-12-15 22:50:13
1044
原创 Windows电脑获取目录及子目录结构及包含文件名的命令
在Windows 11中,你可以使用多种方式来获取当前目录及其子目录的结构,包括文件名。最直接且广泛使用的方法是使用命令行工具,如cmd(命令提示符)或PowerShell。下面是两种不同方式来实现这一需求的示例。
2024-09-04 09:03:09
1489
原创 JavaScript获取系统时间字符串,并格式化
如果你需要更具体的格式,比如只包含年月日时分秒,你可以通过访问Date对象的各个部分(年、月、日等)来手动构建字符串。// 月份是从0开始的// 输出类似:2023-06-15 10:47:30以上方法中,用于确保月份、日期、小时、分钟和秒数始终为两位数,通过在前面填充0实现。这种方法提供了最大的灵活性,允许你根据需求自定义日期时间字符串的格式。
2024-08-24 19:41:05
1376
1
原创 HTML头部(<head>标签内)的JavaScript代码无法操作后续HTML内容(即<body>标签内的内容)的3种解决方法
当你遇到放置在HTML头部(<head>标签内)的JavaScript代码无法操作后续HTML内容(即<body>标签内的内容)的问题时,这通常是因为在脚本执行时,相关的HTML元素还未被加载到DOM中。
2024-08-24 13:07:28
432
原创 Java Properties配置文件使用方法详解
它有一些特有的方法,可以把集合中的数据,按照键值对的形式写到配置文件当中。也可以把配置文件中的数据,读取到集合中来。properties是一个双列集合,拥有Map集合所有的特点。因此可以像使用Map对象一样去使用Properties对象。文件后缀名为.properties,其内容是按键值对存储的。前面为键,后面为值。好处2:如果我们要修改参数,不需要改动代码,直接修改配置文件就可以了。好处1:可以把软件的设置永久化存储。
2023-12-20 13:55:28
946
原创 Java多线程(一)基本概念及三种实现方式
前面2中方式创建的多线程,run方法的返回值类型是void,也即没有线程运行的返回值,为了解决这个问题可以使用第三种线程实现方法。本方式可以获取到多线程运行的结果,但是实现方式相比前面的2种方式略显复杂。创建新线程的方法是实例化该线程类,然后将该实例作为参数传入Thread类创建线程实例类,开辟新线程的方法是调用Thread类实例的start()方法。创建新线程的方法是实例化线程类,开辟新线程的方法是调用该实例的start()方法。扩展性强,实现该接口的同时还可以继承其他的类。进程是程序的基本执行实体。
2023-12-20 13:53:03
497
原创 Arrays工具类二分查找方法binarySearch方法详解
因此,调用本方法要保证源数组是有序的,且内部的元素是唯一的。该方法的一般形式是public static int binarySearch(T[] a, T key),对于基本类型,都有相应的重载方法,如针对int类型有binarySearch(int[] a, int key)等。插入点被定义为将键插入数组中的点:第一个大于键的元素的索引,或者如果数组中的所有元素都小于指定的键,则为a.length。如果数值中找不到要查找的值(也即key),则返回值为:(-(插入点)- 1)。
2023-12-18 16:22:47
701
原创 Java正则操作类Pattern和Matcher
Matcher对象的没有公开的构造器,需要通过Pattern.mathcer方法创建实例,Matcher类提供了对正则表达式的分组支持,以及对正则表达式的多次匹配支持。find()对字符串进行匹配,匹配到的子字符串可以在子字符串的任何位置。start(),end(),group()均有一个对应的重载方法,分别是start(int i),end(int i),group(int i),它们专用于分组操作,Mathcer类还有一个groupCount()方法用于返回有多少组。组号按照左括号来数,只认左括号。
2023-12-16 19:50:10
446
原创 Java读取网页内容
利用URL类和URLConnection类打开指定的HTML网址,然后利用InputStream获取网页内容,为了便于字符读取,使用InputStreamReader将输入流转为字符流,提高操作便捷性。同时这也是制作网络爬虫等内容的第一步。
2023-12-13 15:45:08
1019
1
原创 Java IO流(六)(字符流FileReader和FileWriter)
细节:如果write方法的参数是整数,但是实际上写到本地文件中的是整数在字符集上对应的字符。:就从文件中获取数据,装到缓冲区中,每次尽可能装满缓冲区如果文件中也没有数据了,返回-1。遇到中文,一次读多个字节,读取后解码,返回一个整数。细节2:如果文件不存在会创建一个新的文件,但是要保证父级路径是存在的。细节3:如果文件已经存在,则会清空文件,如果不想清空可以打开续写开关。输入流:一次读一个字节,遇到中文时,一次读多个字节。:读到文件末尾了,read方法返回-1。将缓冲区中的数据,刷新到本地文件中。
2023-12-10 18:00:09
313
原创 Java IO流(五)(字符集基础知识简介)
发布时间:1994年发布1.0版本,期间不断添加新的文字,最新的版本是2022年9月13日发布的15.0版本。:国际标准字符集,它将世界各种语言的每个字符定义一个唯一的编码,以满足跨语言、跨平台的文本信息转换。一个中文占三个字节,二进制第一位是1,第一个字节转成十进制是负数。在UTF-8编码下,英文使用1个字节保存,中文使用3个字节保存。一个英文占一个字节,二进制第一位是0,转成十进制是正数。一个中文占两个字节,二进制高位字节的第一位是1。一个英文占一个字节,二进制第一位是0。
2023-12-10 17:57:04
86
原创 Java IO流(三)(字节流FileInputStream)
引入finally语句块:finally里面的代码一定被执行,除非虚拟机停止。因此释放资源之类的代码非常适合写在finally语句块内。read(byte[] buffer)方法可以一次读一个字节数组的数据,每次读取会尽可能把数组装满。操作本地文件的字节输入流,可以把本地文件中的数据读取到程序中来。细节1:一次读一个字节,读出来的是数据在ASCII上对应的数字。细节2:读到文件末尾了,read方法返回-1。细节1:如果文件不存在,就直接报错。细节1:每次使用完流必须要释放资源。一次读一个字节数组数据。
2023-12-10 17:52:04
166
原创 Java IO流(二)(字节流FileOutputStream)
细节:write方法的参数是整数,但是实际上写到本地文件中的是整数在ASCII上对应的字符。细节2:如果文件不存在会创建一个新的文件,但是要保证父级路径是存在的。操作本地文件的字节输出流,可以把程序中的数据写到本地文件中。细节1:参数是字符串表示的路径或者File对象都是可以的。:参数是字符串表示的路径或者是File对象都是可以的。可以把程序中的数据写到本地文件上,是字节流的基本流。创建对象:文件存在、文件不存在、追加写入。细节3:如果文件已经存在,则会清空文件。,但是要保证父级路径是存在的。
2023-12-08 22:06:23
249
原创 Java File类详解(下)练习二
然后是统计各种文件类型数量的实现,使用Map存储,key为String类型表示文件扩展名,value为Integer类型,表示对应扩展名文件的数量。需求:统计一个文件夹中每种文件的个数并打印。:需求:统计一个文件夹的总大小。需求:删除一个多级文件夹。
2023-12-07 19:26:52
94
原创 Java File类详解(下)练习一
需求:定义一个方法找某一个文件夹中,是否有以avi结尾的电影。(暂时不需要考虑子文件夹)需求:找到电脑中所有以avi结尾的电影。(需要考虑子文件夹)需求:在当前模块下的aaa文件夹中创建一个a.txt文件。
2023-12-07 19:25:34
96
原创 Java File类详解(中)
2:这个方法无法获取文件夹的大小,如果我们要获取一个文件夹的大小,需要把这个文件夹里面所有的文件大小都累加在一起。如果调用者是文件,本方法将返回该调用者的文件和后缀名,也即扩展名。如果调用者是文件夹:则返回的就是文件夹的名字。1:这个方法只能获取文件的大小,单位是字节,如果单位我们要是M,G,可以不断的除以1024。方法length的作用是返回文件的大小(字节数量)。利用文件名过滤器获取当前该路径下所有内容。利用文件名过滤器获取当前该路径下所有内容。利用文件名过滤器获取当前该路径下所有内容。
2023-12-05 21:55:45
239
原创 Java File类详解(上)
如路径1:"a.txt"路径2:"abc\\a.txt"是相对路径,路径1:“C:\\a.txt”File对象表示路径,可以是文件、也可以是文件夹。这个路径可以是存在的,也可以是不存在的。●File对象就表示一个路径,可以是文件的路径、也可以是文件夹的路径。路径2:"C:\\abc\\a.txt"是绝对路径。File对象代表路径,路径分为相对路径和绝对路径。根据父路径对应文件对象和子路径名字符串创建文件对象。●这个路径可以是存在的,也允许是不存在的。根据文件路径创建文件对象。绝对路径是带盘符的。
2023-12-05 21:53:31
206
原创 Java异常机制入门详解(下)
以上代码将会抛出java.lang.ArrayIndexOutOfBoundsException,由于采用的是JVM默认的处理方式,因此在执行输出语句时遇到异常后将停止执行,异常出现后的代码将不会执行。try语句块下面的代码就不会执行了,直接跳转到对应的catch当中,执行catch里面的语句体,但是如果没有对应catch与之匹配,那么还是会交给虚拟机进行处理。写在方法内,结束方法,表示手动抛出异常对象,交给调用者,方法中下面的代码不再执行了。注意:只有当出现了异常才会执行catch里面的代码。
2023-12-04 14:54:04
614
原创 Java异常机制入门详解(上)
异常的引入不是让我们以后不出异常,而是程序出了异常之后,该如何处理。●运行时异常:RuntimeException本身和所有子类,都是运行时异常。编译阶段不报错,是程序运行时出现的。●编译时异常:除了RuntimeExcpetion和他的子类,其他都是编译时异常。:叫做异常,代表程序可能出现的问题。运行时出现的异常(如:数组索引越界异常)编译阶段没有错误提示,运行时出现的。●编译时异常:没有继承RuntimeExcpetion的异常,直接继承于Excpetion。●异常分为两类:编译时异常、运行时异常。
2023-12-04 14:51:19
330
原创 Java方法引用(下)
1.什么是方法引用?把已经存在的方法拿过来用,当做函数式接口中抽象方法的方法体2.::是什么符号?方法引用符3.方法引用时要注意什么?●需要有函数式接口●被引用方法必须已经存在●被引用方法的形参和返回值需要跟抽象方法保持一致●被引用方法的功能要满足当前的需求引用方法说明1.引用静态方法类名::静态方法2.引用成员方法对象::成员方法(引用任一个类对象的方法)this::成员方法(只能由成员方法引用)super::成员方法(只能由成员方法引用)3.引用构造方法类名::new4.使用类名引用成员方法类名::成员
2023-12-03 10:37:25
84
原创 Java方法引用(上)
另外,引用本类的成员方法时,也不能在本类的静态方法里使用this关键字引用,需要首先new一个本类的对象才可以。:表示被引用方法的调用者,其决定了可以引用哪些类中的方法在Stream流当中,第一个参数一般都表示流里面的每一个数据。比如,使用Arrays.sort方法时我们需要实现一个Comparator接口的匿名类,使用方法引用后,可以使用已定义的满足上述条件的方法进行实现。:跟被引用方法的形参保持一致,如果没有第二个参数,说明被引用的方法需要是无参的成员方法。4.被引用方法的功能需要满足当前的需求。
2023-12-03 10:36:00
368
原创 Java流Stream使用详解(练习)
定义一个集合,并添加一些整数1,2,3,4,5,6,7,8,9,10过滤奇数,只留下偶数,并将结果保存起来。创建一个ArrayList集合,并添加以下字符串,字符串中前面是姓名,后面是年龄。保留年龄大于等于24岁的人,并将结果收集到Map集合中,姓名为键,年龄为值。备注:演员类Actor,属性只有二个:name,age。3,把过滤后的男演员姓名和女演员姓名合并到一起。5,将所有的演员对象都保存到List集合中。第一个集合中:存储6名男演员的名字和年龄。第二个集合中:存储6名女演员的名字和年龄。
2023-12-02 16:22:09
386
原创 Java流Stream使用详解(下)
收集到List、Set中比较简单,收集到Map中是重点,有点复杂,需要好好的理解。注意收集的Map中的数据键不能重复,否则会抛出异常。中间方法:filter, limit, skip, distinct, concat, map。●单列集合:Collection中的默认方法stream。终结方法:forEach, count, collect。●数组:Arrays工具类型中的静态方法stream。●一堆零散的数据:Stream接口中的静态方法of。●使用中间方法处理数据。●使用终结方法处理数据。
2023-12-02 16:20:40
75
原创 Java流Stream使用详解(中)
元素去重,依赖(hashCode和equals方法)收集流中的数据,放到数组中。收集流中的数据,放到集合中。合并a和b两个流为一个流。
2023-12-01 17:08:12
713
原创 Java流Stream使用详解(上)
其在使用时一般结合Lambda表达式,简化集合、数组的操作。无法直接使用stream流,需要先使用keySet()、entrySet()转换成单列集合才可使用。需求:按照下面的要求完成集合的创建和遍历创建一个集合,存储多个字符串元素。2.把“张”开头的,长度为3的元素再存储到新集合中。1.把所有以“张”开头的元素存储到新集合中。list.add("张无忌");list.add("周芷若");list.add("张三丰");list.add("赵敏");list.add("张强");
2023-12-01 17:04:28
189
原创 Java不可变集合
Map.of方法使用起来有点麻烦,在JDK10以后,Map中引入新方法Map.copyOf()在List、Set、Map接口中,都存在静态的of方法,可以获取一个不可变的集合。●如果某个数据不能被修改,把它防御性地拷贝到不可变集合中是个很好的实践。●List、Set、Map接口中,都存在of方法可以创建不可变集合。●当集合对象被不可信的库调用时,不可变形式是安全的。注意:这个集合不能添加,不能删除,不能修改。不可变集合:也就是不可以被修改的集合。创建一个具有指定元素的Map集合对象。● List:直接用。
2023-11-30 16:24:21
465
原创 java集合小练习
Random.nextInt(int bound)方法返回[0,bound)中的一个数(前包后闭),说白了就是随机选取0-99这100个数中的一个,这100个数字中的任意一个被抽中的概率都是相同的。可以先按性别定义两个列表,使用Random对象按30-70的概率选择访问女生-男生列表,再使用Collections.shuffle方法洗牌,选择0号索引的元素,即已经实现按指定概率抽取。提示:本题需要用到集合,IO,权重随机算法,有基础的同学可以试试,0基础的同学等IO学完之后再做。
2023-11-25 20:06:24
188
原创 Java工具类Collections详解
java.util.Collections:是集合工具类,注意它不是集合类而是集合的工具类,用于操作集合类。(只能添加类型为T的单列集合)根据默认的自然排序获取最大/小值。打乱List集合元素的顺序。交换集合中指定位置的元素。根据指定的规则进行排序。使用指定的元素填充集合。以二分查找法查找元素。
2023-11-23 14:28:14
69
原创 Java可变参数方法的定义详解
其底层原理就是在实际调用时将传入的可变参数装入一个数组当中。●可变参数必须放在形参列表的最后面。2. 作用:在形参中接收多个数据。3. 格式:数据类型…●形参列表中可变参数只能有一个。
2023-11-22 23:10:56
147
原创 Java随机数生成Random类使用示例
java.Util.Random类,此类的一个实例用于生成伪随机数流,如果使用相同的种子创建了两个Random实例,并且对每个实例进行了相同的方法调用序列,则它们将生成并返回相同的数字序列。所以,要知晓Random对象的伪随机特性,随机只是表明调用随机方法时生成的数是按相等概率分布的,并不代表不能被预测,否则就是真随机数了,而这在计算机里是做不到的。此构造函数将随机生成一个种子,它的值很可能与此构造函数的其他任何调用者使用的值都不相同(确保种子的唯一性)。返回的值是(近似)均匀分布在该范围内的伪随机值。
2023-11-22 14:20:07
350
原创 ESP32检测家中温湿度上云,随时随地多端查看温湿度
因此,我觉得使用ESP32板子来实现温湿度检测就有了非常大的优势,利用ESP32自带的WiFi模块,考虑到实现的便利性,使用HTTP协议可以轻松将采集到的温湿度信息上传到云服务器上,这样在服务器段只需要简单的编写2个网页即可实现信息的存储和读取,这样在手机或者办公室电脑上只需通过访问网页的方式就能查看家里的温湿度,真正做到随时随地监控家里的温湿度。图中红色线连接DHT11的1脚,为3.3v供电,黑色线连DHT11的4脚,为GND,棕色线连接DHT11的2脚,数据传输线,此线另一头连接ESP32的22脚。
2023-11-19 15:02:37
1692
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人