自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

冰茶不冰的博客

大数据之路的点点滴滴

  • 博客(30)
  • 资源 (10)
  • 收藏
  • 关注

原创 Java 包装类——比较大小

整数、浮点类型的包装类,都继承于Number类型,而Number类型分别定义了将数字转换为byte、short、int、long、float、double的方法。所以,可以将Integer、Double先转为转换为相同的基本数据类型(如double),然后使用==进行比较。...

2022-07-03 14:02:38 1811 1

原创 若依框架前后端分离版——导入功能

在实际开发中经常需要使用导入导出功能来加快数据的操作。在项目中可以使用注解来完成此项功能。 在需要被导入导出的实体类属性添加@Excel注解。由于若依代码自动生成已经把导出功能实现好了,这里就不在赘述,下面记录一下我的Excel导入功能的实现流程。...

2022-07-02 17:11:33 8907 1

原创 若依框架前后端分离版——登录模块代码解读

由于最近做项目需要基于若依框架(前后端分离版)二次开发,这里简单记录一下我看若依框架源代码的过程,供自己复习时使用,也希望能够给想学习若依框架的朋友一点启发!

2022-05-29 23:46:44 8059

原创 Centos 7 如何配置环境变量?在不同文件中配置有什么区别?

Linux的环境变量可在多个文件中配置,如/etc/profile,/etc/profile.d/*.sh,~/.bashrc,~/.bash_profile等,本文旨在说明上述几个文件之间的关系和区别。

2022-05-18 13:13:33 1259

原创 Xshell 无法连接虚拟机

有一段时间没用虚拟机,今天发现之前配置好的Centos7虚拟机突然没法用Xshell连接了,上网搜了许多资料,折腾了半天,终于解决了 ,这里简单地记录一下。

2022-04-10 23:55:21 924

原创 MySQL 什么时候适合创建索引?

归纳总结了MySQL适合创建索引的11种情况

2022-04-08 12:31:42 3034

原创 Java 实现 LRU 算法

1 什么是LRULRU是Least Recently Used的缩写,即最近最少使用,是一种常用的页面置换算法,选择最近最久未使用的页面予以淘汰。2 实现思路开始时,内存中没有页面。每次访问页面时,先检测内存中是否存在该页面,若不存在则将该页面加载到内存“末尾”,若存在则直接访问该页面,并将该页面移到内存“末尾”。如果访问某个内存中不存在的页面时,内存已满,则将内存“开头”的页面移出,并将新的页面加载到内存“末尾”。这样就可以始终保持着最近访问的页面在不经常访问的页面的后面了。3数据结构的选择

2022-04-05 19:34:20 4093

原创 Spark 求TopN的优化思路

Spark 求TopN的优化思路

2022-03-26 21:20:00 2224

原创 java 死锁问题

一组进程(线程)的每一个进程(线程)都在等待一个事件,而这个事件只能由这组进程(线程)中的另一个进程(线程)引起。

2022-03-18 17:04:10 634

原创 java 线程池

如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间,线程也属于宝贵的系统资源。在Java中可以通过线程池来避免频繁创建销毁线程、实现重复利用,其实际上就是容纳了多个线程的容器。这种思想是不是非常类似于我们生活中的共享单车呢?

2022-03-18 17:02:55 375

原创 java 原子性

1 引入所谓的原子性是指在一次操作或者多次操作中,要么所有的操作全部都得到了执行并且不会受到任何因素的干扰而中断,要么所有的操作都不执行。class VolatileAtomicThread implements Runnable { // 定义一个int类型的遍历 private int count = 0 ; @Override public void run() { // 对该变量进行++操作,100次 for(int x = 0 ;

2022-03-16 20:40:45 1434

原创 Java 集合类(Map和Collection)

1 引言集合是java中提供的大小可变的容器。集合分为单列结合Collection和双列集合Map。集合和数组的区别:数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储任意类型数据。集合存储的都是引用数据类型,如果想存储基本类型数据需要存储对应的包装类型。2 Collection2.1 继承体系Collection:单列集合类的根接口,Collection接口又派生出三个子接口,分别是java.util.List、java.util.Set和java.uti

2022-03-13 19:27:22 2014

原创 Scala 函数式编程

1 引入随着大数据时代的到来,函数式编程开始迅速崛起,因为,函数式编程可以较好满足分布式并行编程的需求(函数式编程一个重要特性就是值不可变性,这对于编写可扩展的并发程序而言可以带来巨大好处,因为它避免了对公共的可变状态进行同步访问控制的复杂问题)。2 函数定义2.1 函数字面量在非函数式编程语言里,函数的定义包含了“函数类型”和“值”两种层面的内容。但是,在函数式编程中,函数是“头等公民”,可以像任何其他数据类型一样被传递和操作,也就是说,函数的使用方式和其他数据类型的使用方式完全一致了。这时,我们

2022-03-06 18:41:44 580

原创 Scala 面向对象

1 权限修饰符如果字段前面什么修饰符都没有就默认是public,外部可以访问该字段。对于类而言,我们并不需要声明为public,Scala文件中包含的多个类之间,都是彼此可见的。2 方法方法定义:def functionName ([参数列表]) : [return type] = { // 方法主体}如果你不写等于号和方法主体,那么方法会被隐式声明为抽象(abstract)在Scala中不返回任何值,那么就用Unit表示方法的返回值,不需要靠return语句,方法里面的最后一个表达式

2022-03-06 16:41:29 1974

原创 Scala 基础语法

由于学习Spark需要用到Scala,这里记录一下Scala的一些基础语法。注意:Scala 行末不需要加分号1 变量类型val,是不可变的,在声明时就必须被初始化,而且初始化以后就不能再赋值var,是可变的,声明的时候需要进行初始化,初始化以后还可以再次对其赋值。2 基本数据类型包括Byte、Char、Short、Int、Long、Float、Double和Boolean。和Java不同的是,在Scala中,这些类型都是“类”。3 字面量包括整数字面量、浮点数字面量、布尔型字面量、

2022-03-06 16:13:01 316

原创 Java Lambda表达式和方法引用

Lambda表达式是JDK1.8开始之后的新技术,是一种代码的新语法,其核心目的是为了简化匿名内部类的代码写法。

2022-03-01 11:59:33 1250

原创 String、StringBuilder、StringBuffer三者的区别

String、StringBuilder、StringBuffer三者的区别

2022-02-14 16:14:14 336

原创 java volatile关键字

并发编程下,多线程修改变量,会出现线程间变量的不可见性。即多个线程访问共享变量,会出现一个线程修改变量的值后,其他线程看不到最新值的情况。

2022-02-06 14:14:22 586

原创 java 多线程编程(包括创建线程的三种方式、线程的生命周期、线程的调度策略、线程同步、线程通信、线程池、死锁等)

1 多线程的基础知识1.1 单核CPU和多核CPU单核CPU,其实是一种假的多线程,因为在一个时间单元内,也只能执行一个线程的任务。微观上这些程序是分时的交替运行,只不过是给人的感觉是同时运行,那是因为分时交替运行的时间是非常短的。只有在多核 CPU 系统中,这些程序彩色真正意义上的的同时执行。目前电脑市场上说的多核 CPU,便是多核处理器,核越多,并行处理的程序越多,能大大的提高电脑运行的效率。通过任务管理器可以很方便地查看自己电脑CPU的核数,如下图所示。1.2 并行与并发的区别并行:多

2022-01-23 14:50:53 685

原创 java DateFormat及SimpleDateFormat

java.text.DateFormat 是日期/时间格式化子类的抽象类,我们通过这个类可以帮我们完成日期和文本之间的转换,也就是可以在Date对象与String对象之间进行来回转换。

2022-01-08 16:02:58 814

原创 java 代码块(局部代码块、实例代码块、静态代码块、同步代码块)

1 引言代码块是类的成分之一:成员变量,方法,构造器,代码块,内部类。在Java中,使用 { } 括起来的代码被称为代码块(Code block)1.1 代码块的分类根据其位置和声明的不同,可以分为:局部代码块:用于限定变量生命周期,及早释放,提高内存利用率。静态代码块:主要用于对静态属性进行初始化。实例(构造)代码块:调用构造方法都会执行,并且在构造方法前执行。同步代码块:一种多线程保护机制。2 局部代码块在方法中出现,可以限定变量生命周期,及早释放,提高内存利用率。2.1 示例

2022-01-06 16:55:56 8917 2

原创 java 抽象类(abstract)与接口(interface)

1 抽象类需要注意的细节:抽象类不能创建对象,如果创建,编译无法通过而报错。只能创建其非抽象子类的对象。理解:假设创建了抽象类的对象,调用抽象的方法,而抽象方法没有具体的方法体,没有意义。抽象类中,是有构造器的,其是供子类创建对象时,初始化父类成员使用的。理解:子类的构造方法中,有默认的super(),需要访问父类构造方法。抽象类中,不一定包含抽象方法,但是有抽象方法的类必定是抽象类。理解:未包含抽象方法的抽象类,目的就是不想让调用者创建该类对象,通常用于某些特殊的类结构设

2022-01-05 17:28:35 1981

原创 java的重写(override)与重载(overload)

1 方法重写1.1 方法重写的概念子类继承了父类,子类就得到了父类的某个方法。但是子类觉得父类的这个方法不好用或者无法满足自己的需求。子类重写一个与父类申明一样的方法来覆盖父类的该方法,子类的这个方法就进行了方法重写。声明不变,重新实现1.2 方法重写的校验注解:@OverrideJava建议在重写的方法上面加上一个@Override注解,@Override优势:可读性好,安全,优雅!!这个注解标记的方法,就说明这个方法必须是重写父类的方法,否则编译阶段报错。1.3 方法重写的具体要求子类重

2022-01-02 23:28:00 1357

原创 java 继承相关知识点

子类能否继承父类的构造器?子类不能继承父类的构造器,因为子类有自己的构造器。子类能否继承父类的私有成员(私有成员变量,私有成员方法)?值得注意的是子类可以继承父类的私有成员(成员变量,方法),只是子类无法直接访问而已,可以通过getter/setter方法访问父类的private成员变量。也可以暴力去访问(可以通过反射调用)继承自父类的私有成员。子类能否继承父类的静态成员(静态成员变量,静态成员方法)?我认为子类是不能继承父类的静态成员的,子类只是可以访问父类的静态成员,父类的静态成员只有一份可以

2022-01-02 22:13:08 312

原创 基于HttpClient和JSoup的java网络爬虫

引言网络爬虫(Web Crawler),又称为网络蜘蛛(Web Spider)或 Web 信息采集器,是一种按照一定规则,自动抓取或下载网络信息的计算机程序或自动化脚本。网络爬虫本质上就是通过模拟浏览器的方式获取服务器数据。...

2022-01-01 15:28:51 406

原创 其他istream类方法(get(),getline(),ignore())

get(char&) 和 get()简介:代码:#include <iostream>using namespace std;int main(int argc, char const *argv[]){ /* get(char&) 将输入的字符赋给其参数(不会跳过空字符————空格、制表符、换行符) */ char c1, c2, c3; cin.get(c1).get(c2).get(c3); cout &l

2020-12-07 17:31:17 609

原创 java 中 equals 和 == 的区别(基本数据类型、一般类、String)

Java中,对于基本数据类型、一般类、String而言,equals 和 == 究竟有什么区别呢?让我们深入探讨以下吧!

2020-12-04 14:18:01 1597

原创 C语言报错:a label can only be part of a statement and a declaration is not a statement

在写代码的时候,变量的声明不应该出现在label之后,比如switch语句中的case结构也可能会遇到类似的问题,在case标签下面定义了变量,则会报错。对此问题的分析:由于switch的几个case语句在同一个作用域(因为case 语句只是标签,它们共属于一个swtich语句块),所以如果在某个case下面声明变量的话,对象的作用域是在俩个花括号之间 也就是整个switch语句,其他的case语句也能看到,这样的话就可能导致错误。

2020-12-04 14:08:02 16300 2

原创 VSCode如何更改C/C++程序运行产生的.exe文件的生成路径

一、F5调试生成的.exe文件task.json文件"args": [ "E:${fileDirname}/${fileBasenameNoExtension}.exe",],改成 (您需要保存位置的路径名,将反斜杠改成斜杠)"args": [ "E:/VsCode/VS-Code-C/exe/${fileBasenameNoExtension}.exe",],launch.json文件"program": "${fileDirname}\\${f

2020-12-04 13:58:28 18182 6

原创 C++ 输出cout

C++ 输出cout#include <cstring>#include <iostream>using namespace std;int main(){ /* <<运算符 (可以进行 混合 拼接输出) */ const char *s = "hhhhh"; //字符串是const char*类型的,所以将字符串赋值给 char* 类型要加const关键字

2020-12-04 11:37:20 4203

东北大学 人文选修 宝玉石鉴赏资料 知识点整理

东北大学 人文选修 宝玉石鉴赏资料 知识点整理

2021-12-22

东北大学 人文选修 孙子兵法 题库 每一章的练习题及答案

东北大学 人文选修 孙子兵法 题库 每一章的练习题及答案

2021-12-22

东北大学 对话百草 bb平台小测试参考答案 期末论述题参考答案 干货

内含两次bb平台小测试参考答案、期末论述题题目及参考答案

2021-11-12

东北大学软件质量保证与测试干货.zip

内含吴辰铌课上软件测试ppt(已去背景可直接打印)、ppt个人中文笔记、随堂测试参考答案、期末复习题、期末大作业参考

2021-11-09

东北大学 操作系统 学堂在线 答案

包含每一章的课后习题以及期末测试的答案 用来复习也非常不错

2021-06-20

大国航母与舰载机 习题 往年试题 及答案

大国航母与舰载机 习题 往年试题 及答案

2021-06-17

东北大学 概率论 前四章思维导图整理 课后习题答案 mooc答案

东北大学 概率论 前四章思维导图整理 课后习题答案 mooc答案

2021-01-11

东北大学 数据结构 课程实验源码

仅供参考

2021-01-08

空空如也

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

TA关注的人

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