自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 资源 (1)
  • 收藏
  • 关注

转载 day14-单元测试、反射、注解、动态代理

各位小伙伴,接下来我们学习注解。注解和反射一样,都是用来做框架的,我们这里学习注解的目的其实是为了以后学习框架或者做框架做铺垫的。那注解该怎么学呢?和反射的学习套路一样,我们先充分的认识注解,掌握注解的定义和使用格式,然后再学习它的应用场景。先来认识一下什么是注解?Java注解是代码中的特殊标记,比如@Override、@Test等,作用是:让其他程序根据注解信息决定怎么执行该程序。

2024-03-17 01:15:08 51

转载 day13-网络编程

同学们,今天我们学习的课程内容叫网络编程。意思就是编写的应用程序可以与网络上其他设备中的应用程序进行数据交互。网络编程有什么用呢?这个就不言而喻了,比如我们经常用的微信收发消息就需要用到网络通信的技术、在比如我们打开浏览器可以浏览各种网络、视频等也需要用到网络编程的技术。我们知道什么是网络编程、也知道网络编程能干什么后了,那Java给我们提供了哪些网络编程的解决方案呢?Java提供的网络编程的解决方案都是在java.net包下。

2024-03-16 01:27:00 59

转载 day12-Java多线程

首先,什么是线程安全问题呢?线程安全问题指的是,多个线程同时操作同一个共享资源的时候,可能会出现业务安全问题。下面通过一个取钱的案例给同学们演示一下。案例需求如下场景:小明和小红是一对夫妻,他们有一个共享账户,余额是10万元,小红和小明同时来取钱,并且2人各自都在取钱10万元,可能出现什么问题呢?如下图所示,小明和小红假设都是一个线程,本类每个线程都应该执行完三步操作,才算是完成的取钱的操作。但是真实执行过程可能是下面这样子的。

2024-03-16 01:19:44 54

转载 day11-Java的特殊文件、日志技术

同学们,前面我们学习了IO流,我们知道IO流是用来读、写文件中的数据。但是我们接触到的文件都是普通的文本文件,普通的文本文件里面的数据是没有任何格式规范的,用户可以随意编写,如下图所示。像这种普通的文本文件,没有任何规律可言,不方便程序对文件中的数据信息处理。在以后的Java开发过程中还会遇到一些特殊的文本文件,这些文件是有一些格式要求的,方便程序对文件中的数据进行处理。比如,后面我们会用到两种特殊的文本文件,一种是properties文件,还有一种是xml文件。如下图所示。

2024-03-16 01:12:58 58

转载 day10-IO流(二)

接下来,我们先学习OutputStreamWriter类,你看这个类名也比较有意思,前面是OutputStream表示字节输出流,后面是Writer表示字符输出流,合在一起意思就是表示可以把OutputStream转换为Writer,最终OutputStreamWriter其实也是Writer的子类,所以也算是字符输出流。如果使用FileReader读取GBK格式的文件,可能存在乱码,因为FileReader它遇到汉字默认是按照3个字节来读取的,而GBK格式的文件一个汉字是占2个字节,这样就会导致乱码。

2024-03-16 01:04:37 16

转载 day09-字符集、IO流(一)

各位小伙伴,在前面我们已经学习过File类。但是我们知道File只能操作文件,但是不能操作文件中的内容。我们也学习了字符集,不同的字符集存字符数据的原理是不一样的。有了前面两个知识的基础,接下来我们再学习IO流,就可以对文件中的数据进行操作了。IO流的作用:就是可以对文件或者网络中的数据进行读、写的操作。如下图所示把数据从磁盘、网络中读取到程序中来,用到的是输入流。把程序中的数据写入磁盘、网络中,用到的是输出流。简单记:输入流(读数据)、输出流(写数据)

2024-03-16 00:58:22 15

转载 day08-Map集合、Stream流、File类

比如有如下案例:往HashMap集合中存储Student对象作为键,学生的家庭住址当做值。要求,当学生对象的姓名和年龄相同时就认为键重复。

2024-03-16 00:54:54 29

转载 day07——集合进阶(Set、Map集合)

最后,将所有的Collection集合总结一下,要求大家掌握每一种集合的特点,以及他们的体系结构。好了,关于Collection集合,到这里就学习完了。各位同学,前面我们已经把单列集合学习完了,接下来我们要学习的是双列集合。首先我们还是先认识一下什么是双列集合。所谓双列集合,就是说集合中的元素是一对一对的。Map集合中的每一个元素是以key=value的形式存在的,一个key=value就称之为一个键值对,而且在Java中有一个类叫Entry类,Entry的对象用来表示键值对对象。

2024-03-16 00:40:33 35

转载 day06—集合进阶(异常、集合)

同学们经过刚才的学习已经认识了什么是异常了,但是无法为这个世界上的全部问题都提供异常类,如果企业自己的某种问题,想通过异常来表示,那就需要自己来定义异常类了。我们通过一个实际场景,来给大家演示自定义异常。需求:写一个saveAge(int age)方法,在方法中对参数age进行判断,如果age<0或者>=150就认为年龄不合法,如果年龄不合法,就给调用者抛出一个年龄非法异常。

2024-03-13 19:41:43 13

转载 day05-算法和数据结构

但是从另一个角度想,一旦我们学会了,会大大简化我们的代码书写,提高我们编写代码的效率,而且这些新的语法都是有前提条件的,遇到的时候就简化得了。**先聊一聊基本查找:**假设我们要查找的元素是81,如果是基本查找的话,只能从0索引开始一个一个往后找,但是如果元素比较多,你要查找的元素比较靠后的话,这样查找的此处就比较多。接下来,我们学习一下正则表达式的另外两个功能,替换、分割的功能。在学习二分查找之前,我们先来说一下基本查找,从基本查找的弊端,我们再引入二分查找,这样我们的学习也会更加丝滑一下。

2024-03-13 19:33:24 23

转载 day04——常用API

各位同学,接下来我们学习的这个类叫BigDecimal,至于它是干什么用的,我们先不说。为了解决计算精度损失的问题,Java给我们提供了BigDecimal类,它提供了一些方法可以对数据进行四则运算,而且不丢失精度,同时还可以保留指定的小数位。学完Date类和SimpleDateFormat类之后,我们再学习一个和日期相关的类,它是Calendar类。Math是数学的意思,该类提供了很多个进行数学运算的方法,如求绝对值,求最大值,四舍五入等,话不多说,直接上代码。接下来,我们学习一下JDK8新增的日期类。

2024-03-13 19:27:52 11

转载 day03——面向对象高级

接下来我们学习一下自定义泛型类,但是有一些话需要给大家提前交代一下:泛型类,在实际工作中一般都是源代码中写好,我们直接用的,就是ArrayList这样的,自己定义泛型类是非常少的。自定义泛型类的格式如下//这里的<T,W>其实指的就是类型变量,可以是一个,也可以是多个。public class 类名<T,W>{接下来,我们自己定义一个MyArrayList泛型类,模拟一下自定义泛型类的使用。注意这里重点仅仅只是模拟泛型类的使用,所以方法中的一些逻辑是次要的,也不会写得太严谨。

2024-03-13 19:19:17 10

转载 day02——面向对象高级

什么是多态?多态是在继承、实现情况下的一种现象,表现为:对象多态、行为多态。比如:Teacher和Student都是People的子类,代码可以写成下面的样子。

2024-03-11 00:02:50 16

转载 day01——面向对象高级

权限修饰符是用来限制类的成员(成员变量、成员方法、构造器…)能够被访问的范围。每一种权限修饰符能够被访问的范围如下下面我们用代码演示一下,在本类中可以访问到哪些权限修饰的方法。

2024-03-10 23:57:14 27

转载 day09——Java基础项目(ATM系统)

1. ATM系统功能介绍有查询、取款、存款、转账等业务功能,用户选择哪个功能就执行对应预先设定好的程序。由于没有图形化界面编程,所以我们是做不出界面效果的,但是我们可以在控制台模拟ATM机的各项功能。如下图所示:运行程序时,进入登录界面,在此界面可以登录、或者开户。在登录界面,如果用户录入2就进入用户开户的功能:如下图所示在登录界面,如果用户录入1就进入用户登录的功能:如下图所示:各位同学,你可能会觉得这个案例功能怎么这么多啊!太复杂了,其实也没你想得那么复杂。

2024-03-10 18:01:18 923

转载 day08——Java常用API

各位同学,我们前面已经学习了面向对象编程,使用面向编程这个套路,我们需要自己写类,然后创建对象来解决问题。但是在以后的实际开发中,更多的时候,我们是利用面向编程这种套路,使用别人已经写好的类来编程的。别人写好的一些程序,给咱们程序员直接拿去调用。Java官方其实已经给我们写好了很多很多类,每一个类中又提供了一系列方法来解决与这个类相关的问题。比如String类,表示字符串,提供的方法全都是对字符串操作的。比如ArrayList类,表示一个容器,提供的方法都是对容器中的数据进行操作的。

2024-03-10 17:55:24 20

转载 day07——面向对象基础

首先每一部电影,都包含这部电影的相关信息,比如:电影的编号(id)、电影的名称(name)、电影的价格(price)、电影的分数(score)、电影的导演(director)、电影的主演(actor)、电影的简介(info)。为了去描述每一部电影,有哪些信息,我们可以设计一个电影类(Movie),电影类仅仅只是为了封装电影的信息,所以按照JavaBean类的标准写法来写就行。return id;

2024-03-10 17:47:26 17

转载 day06——Java编程案例(专题)

文章目录day06——Java编程案例(专题)案例一:买飞机票案例二:开发验证码案例三:评委打分案例四:数字加密案例五:数组拷贝案例六:抢红包案例七:找素数案例八:模拟双色球[拓展案例]8.1 手动投注8.2 随机开奖号码8.3 判断是否中奖day06——Java编程案例(专题)各位同学,前面我们已经学习过很多Java的基础知识了,主要有变量、数组、运算符、流程控制、方法等。但是对于这些知识点的运用,掌握得还不是很熟练,所以今天我们专门花一天时间,给同学们讲几个专项练习题,把前面所学习的知识巩固一下。

2024-03-10 17:38:44 16

转载 day05——方法

1.1 方法是什么**方法是一种语法结构,它可以把一段代码封装成一个功能,以便重复调用。**这句话什么意思呢?意思是,把一段功能代码围在一起,别人都可以来调用它。下图是方法的完整格式我们看一个需求,比如现在张工、李工两个人都需要求两个整数的和。不使用方法,代码如下。// 1、李工。int a = 10;int b = 20;System.out.println("和是:" + c);// 2、张工。System.out.println("和是:" + c1);

2024-03-10 17:34:22 15

转载 day04——Java数组

各位同学,我们已经知道数组是用来干什么的。那么如何使用Java语言写一个数组呢?这里就需要学习一下数组的初始化格式。数组有两种初始化的方式,一种是静态初始化、一种是动态初始化。我们先用静态初始化来学习数组的操作。

2024-03-10 17:26:52 27

转载 day03——程序流程控制

到这里关于循环结构的所有内容就都已经学习完了,我们再把几种循环结构在什么场景下使用,再总结一下。1. 什么是流程控制答:流程控制是用来控制程序的执行顺序的2. 分支结构if和switch,如何选择?答:if分支:一般用于对一个范围进行判断switch分支:对一个一个值进行匹配3. for循环和while循环、do-while如何循环答:知道循环次数用for、不知道循环次数用while想要先执行,再判断,用do-while。

2024-03-10 17:20:53 24

转载 day02——数据类型、运算符

但是你强行将范围大的数据,赋值给范围小的变量也是可以的,这里就需要用到强制类型转换。下面是强制类型转换的格式。

2024-03-10 17:10:36 25

转载 day01 ——Java基础入门

所谓跨平台指的是用Java语言开发的程序可以在多种操作系统上运行,常见的操作系统有Windows、Linux、MacOS系统。如果没有跨平台性,同一个应用程序,想要在多种操作系统上运行,需要针对各个操作系统单独开发应用。比如微信有Windows版本、MacOS版本、Android版本、IOS版本。

2024-03-10 17:03:55 42

原创 国科大-移动互联网期末考试-2023

国科大2023移动互联网考试复习自用笔记

2023-11-06 16:05:39 516 6

原创 pycharm安装pytorch和torchvision超简单详细!

点开pycharm的右下角,看python解释器的版本。我的是我的是 :F:\Annconda\Anaconda3。

2023-11-01 14:41:16 5248 6

原创 数据库速成笔记

文章来自于CSDN张无忌的课程,我做了简要总结,方便计算机国科大沈阳计算所研究生复试

2023-09-16 22:00:03 351

原创 WORD使用教程笔记

正规形式编号打勾接着设置标题2和标题3将缩进去掉,改为0符号说明单独一个三线表使用Echarts、Tableau和power BI使用python的包将latex代码复制到Axmath或者mathtype快捷键:CTRL + ALT + M。

2023-09-14 00:10:48 550

原创 Mathtype快捷键

Shift+=(不等号)。先按【Ctrl+M】放开后,再按【C】——弹出更改矩阵对话框,可以更改矩阵的阶数和矩阵的对齐方式等。先按【Ctrl+G】,放开后,再按【Shift+英文字母】,得到相应的大写希腊字母。先按【Ctrl+M】放开后,再按【n】——弹出矩阵输入对话框,可输入任意阶矩阵。先按【Ctrl+K】,放开后,再按【Shift+=】,就得到不等于符号(≠)先按【Ctrl+G】,放开后,再按【英文字母】得到相应的小写希腊字母;先按【Ctrl+T】,放开后,再按【Shift+]】——右单边大括号。

2023-09-13 23:14:45 1896

原创 2023考研总结(11408)

考研复习经验11408

2023-05-15 16:32:22 334

原创 数据挖掘——python基础知识

数据挖掘——python基础

2023-02-27 16:13:01 1184

原创 斐波那契数列最大公约数

斐波那契数列最大公约数题目大意解题思路这个题F(2020)和F(520)结果太大,因此,我们用bigInteger来做。具体求斐波那契数列的方法我们都很熟悉,不再展开赘述,直接看下述代码。这是求最大公约数的欧几里得公式: private static BigInteger gcd(BigInteger a, BigInteger b) { BigInteger x = new BigInteger("0"); return b.equals(x) ? a:gcd(b, a.mod(

2022-04-10 16:40:04 472

原创 分配口罩(动态规划,01背包)

分配口罩(动态规划,01背包)题目大意解题思路属于动态规划类型的题目:即(有限制的最优选择问题)我们设A医院分配为的口罩为high,设B医院分配为的口罩为low,题目要求我们求 min(high - low),其中high = sum(所有口罩的总重量)- low:所以原方程化简为:min(sum - 2* low) = min 2*(sum/2 - low) , 即求max(low)所以题目等价为:从15批口罩中选,总价值不超过 sum/2的最大值

2022-04-10 16:37:22 526

原创 第12届蓝桥杯 第八题:《杨辉三角形》— javaB组

第八题:杨辉三角形题目大意解题思路我是看见这个题,没想别的方法,直接去找规律了。果不其然,发现了规律。每个不同数字对应的第几个数可以算出来:数: 1 2 3 4 5下标: 3 5 8 12 17相差: 2 3 5 8 12可以通过代码把1,2,3,4,5在这一列的下标算出来 int[] count = new

2022-04-07 20:52:45 716

原创 第12届蓝桥杯 第七题:《最少砝码》— javaB组

第七题:java《最少砝码》题目大意解题思路重量: 1 2 3 4 5 6 7 8 9需要的砝码数: 1 2 2 2 3 3 3 3 3可以计算出:重量: 1 需要的砝码数:1 共1个数重量: 2-4 需要的砝码数:2

2022-02-10 19:54:59 940

原创 第12届蓝桥杯 第七题:《砝码称重》的两种解法dfs和dp算法

第七题:《砝码称重》题目大意解题思路思路1:用闫氏dp分析法:思路2:dfs暴力搜索dfs记住:找重复,找变化,找边界 来写dfs的函数。预定义一个count数组,来存放0-100000的所有数据。每得到一个大于0的重量sum,就令count[sum] = 1。最后打印count数组中为1的数,即可。但是结果会超时,只能拿一半的分数。private static void dfs(int x,int[] w,int sum,int[] count) {//下一个使用砝码的下标,砝码数组

2022-02-10 16:28:55 3496 6

原创 完全背包的三种不断优化的解法—dp算法(动态规划)—java

8.2.1(2)完全背包问题题目:在01背包的基础上,将每个物品的数目改成无限个。普通解法1:在01背包的基础上加上一层for循环。import java.util.*;//背包//dfs暴力public class 草稿纸 { public static void main(String[] args){ int N,V; Scanner scanner = new Scanner(System.in); N = scanner.nextInt();//物品数 V = sc

2022-02-09 19:42:06 394

原创 01背包问题—dp算法(动态规划)—java代码

import java.util.*;//背包public class Main { public static void main(String[] args){ int N,V; Scanner scanner = new Scanner(System.in); N = scanner.nextInt();//物品数 V = scanner.nextInt();//背包容积 int[] v = new int[N+1];//每个物品的体积 int[] w = new int

2022-02-09 13:29:55 803

原创 第12届蓝桥杯 第六题:《显示时间》

第五题:《时间显示》题目大意解题思路方法1:我们可以利用Java自带 date 类,实现秒自动转换为时间,然后通过 SimpleDateFormat 类,改变时间的格式。但是要注意咱们是东八区,时间要减去8个小时。方法2:先把单位毫秒化成秒:d = d / 1000;再把日期化成最后一天:d = d % (24*60*60);然后分别求,小时,分钟,和秒int h = (int) (d / 3600);int m = (int) ((d % 3600)/60);int s

2022-02-08 13:58:21 6812

原创 第12届蓝桥杯 第五题:《路径》

第五题:《路径》题目大意本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。解题思路这是求两个点的最短路径的问题,我们要建立一个二维数组,用于存放初始化每两个点的距离。//将数组初始化为距离 for (int i = 0; i < 2021; i++) { for (int j = 0; j < 2021; j++) { if (i == j) { arr[i][j] = 0; }else if (Math.abs(i - j)

2022-02-08 10:48:56 1844 1

原创 第12届蓝桥杯 第四题:《货物摆放》

第四题:《货物摆放》题目大意本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。解题思路如果直接进行三层for循环嵌套,数据太大,运行不出来。于是我们可以先把n的所有因数求出来.//求N的所有约数,用Arraylist存储 ArrayList<Long> list = new ArrayList<Long>(); for (long i = 1; i*i<=N; i++) { if (N%i == 0) { list.add

2022-02-07 17:41:33 689 3

2022年美赛C题获奖论文

里面有三个文件,一个word英文提交版,一个word中文版,一个pdf提交版。 里面的论文模版可以直接修改自己用。 获奖等级为国际二等奖。

2022-05-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除