自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 收藏
  • 关注

原创 算法笔记(三):数组

把动态数组封装为一个类。

2023-08-25 21:27:23 304 1

原创 算法笔记(二):二分查找

i不能等于m+1,因为else的情况包括target==a[m],如果i=m+1,那就略过了这个正确的查询结果。对于 Leftmost 与 Rightmost,可以返回一个比 -1 更有用的值。问题:当查找的元素在数组最左边或者最右边时,就会导致不平衡。,查找元素4,结果也是索引3,并不是最左侧的元素。如果希望返回的是要查找的元素中最左侧元素。如果希望返回的是要查找的元素中最右侧元素。,查找元素4,结果是索引3。核心:j索引位置的元素,Rightmost 改为。Leftmost 改为。

2023-08-25 21:26:42 153

原创 算法笔记(一):时间复杂度

已知fn来说,求gnfn100∗n2100fnn2nnfnn3n2n2lognlog2​nlog10​nlog2​nlog10​2log10​n​log10​21​logncc∗logn。

2023-08-25 21:26:14 184

原创 Java笔记(三十三):JDBC、ResultSet、PreparedStatement、JDBC与事务、连接池、C3P0、Druid、Apache-DBUtils

nextprevious/*** @author 韩顺平* 演示statement 的注入问题*///让用户输入管理员名和密码System.out.print("请输入管理员的名字: ");//next(): 当接收到 空格或者 ' 就是表示结束// 老师说明,如果希望看到SQL注入,这里需要用nextLineSystem.out.print("请输入管理员的密码: ");//通过Properties对象获取配置文件的信息//获取相关的值。

2023-08-08 08:53:07 182

原创 Java笔记(三十二):MySQL(下)-- 事务、索引、引擎、视图、MySQL管理

DML: 添加插入删除【⭐】简而言之:事务是一组操作的集合,它是一个不可分割的工作单位。事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。当执行事务操作时,mysql会在表上加锁,防止其他用户改表的数据索引(index):是帮助数据库高效获取数据的数据结构。简单来讲,就是使用索引可以提高查询的效率。【表类型由存储引擎决定】当使用子句创建视图时,MySQL会通过视图检查正在更改的每个行,例如 插入,更新,删除,以使其符合视图的定义。

2023-08-05 19:45:53 113

原创 Java笔记(三十一):MySQL(中)--查询DQL、单表查询、函数、多表查询、查询结果合并

当selcet中有聚合函数时,看起来是 select 先执行,因为后面having可以用到selcet聚合函数后面的别名但实际上还是select 后执行,如果不是聚合函数或者其他函数的别名时测试数据。

2023-08-05 19:45:40 309

原创 Java笔记(三十):MySQL(上)-- 数据库、MySQL常用数据类型、DDL、DML、多表设计

IDEA有个Database模块,点一下,连接上MySQL就行(1)调出查询界面。

2023-08-05 19:45:24 252

原创 Java笔记(二十九):反射、Class类、类加载过程、通过反射获取类结构信息、反射调用构造器创建对象、反射访问类中的成员

(1)Class也是类,因此也继承Object类;(2)Class类对象不是new出来的,而是系统创建的(类加载);具体来说,是通过ClassLoader类的loadClass创建(3)对于某个类的Class类对象,在内存中只有一份,因为类只加载一次且类加载是同步机制,只能有一个线程加载这个类;比如,先用new一个对象后,再用反射forName去构建Class类型对象,不会再进入ClassLoader类的loadClass方法。

2023-08-02 13:12:43 230

原创 Java笔记(二十八):多用户即时通信系统【下】(功能实现--私聊/群聊发文件/服务端推送消息/离线信息存储接收、虚拟机作为服务端代码修改)

QQview类:新增对象属性,调用新增类的新方法MessageClientService类:新增类ClientConnectServerThread类:新增类型判断。

2023-08-01 22:10:29 179

原创 Java笔记(二十七):多线程即时通信系统【上】(需求分析、设计、功能实现--用户登录/拉取在线用户列表/无异常退出系统)

需求分析→设计阶段→实现阶段→测试阶段→实施阶段→维护阶段。

2023-08-01 14:19:06 179

原创 Java笔记(二十六):网络编程、IP地址、InetAddress类、TCP和UDP、Socket套接字、TCP&UDP网络编程

(1)套接字(Socket)开发网络应用程序被广泛采用,以至于成为事实上的标准;(2)通讯的两端都要有Socket,是两台机器之间的通讯端点;(3)网络通信其实就是Socket间的通信;(4)Socket允许程序把网络连接当成一个流,数据在两个Socket间通过IO传输(理解成客户端和服务端的插头)(5)一般主动发起通信的应用程序属于客户端等待通信请求的为服务端。① 基于客户端-服务端的网络通信;② 底层使用的是TCP/IP协议;③ 应用场景举例:客户端发送数据,都无端接受并显示控制台;

2023-07-31 18:34:30 311

原创 VMware + Ubuntu设置为服务器,主机Win10设置为客户端 => 网络配置及IDEA SSH配置

设置完后点ok,退出来点击Test Connection,测试是否连接成功。结尾的(这里以jdk-8u371-linux-x64.tar.gz为例)安装完成后,输密码进入,弹出来的帮助页面直接跳过就行。,找到VMnet8,复制对应的IPV4地址。输入信息后点连接(22是默认ssh的端口)硬件根据选择移除,这里把声卡和打印机删了。返回VMware,右键该虚拟机,选择移除。点击左上角+号,选中SFTP,填写名字。返回上级文件夹,把文件夹删了。,点击右上角倒三角,选择。,获取虚拟机ip地址。

2023-07-31 09:21:48 548

原创 Java笔记(二十五):坦克大战【三】(IO流---存盘退出 / 继续上局、碰撞检测---防止坦克重叠)

IO流 - 应用到坦克大战一、坦克大战6.0版1、防止坦克重叠运动当前坦克向上时:当左上角和右上角进入敌方坦克区域,则视为重叠当前坦克向左时:当左上角和左下角进入敌方坦克区域,则视为重叠当前坦克向下时:当左下角和右下角进入敌方坦克区域,则视为重叠当前坦克向右时:当右上角和右下角进入敌方坦克区域,则视为重叠变化:EnemyTank:增加成员Vector enemys ,用于接收myPanel的Vector编写方法isTouchEnemyTank,判断当前这个敌人的坦克,是否和 ane

2023-07-30 10:52:23 215

原创 Java笔记(二十四):IO流、文件、Input/OutputStream、Reader、Writer、节点流处理流、序列化反序列化、标准输入输出流、转换流、打印流、Properties类

①//根据路径构建一个File对象;②//根据父目录文件+子路径构建一个File对象;③//根据父目录+子路径构建一个File对象;④ 使用文件对象名.createNewFile()创建新文件。节点流可以从一个特定的数据源【数据源就是存放数据的地方】读写数据,常见节点流如FileReader、FileWriter;节点流是比较底层的流(直接对数据进行操作)BufferedInputStream是字节流,在创建BufferedInputStream时,会创建内部缓冲区数组。/**

2023-07-29 11:24:09 401

原创 JAVA笔记(二十三):坦克大战【二】(线程---子弹发射 / 敌人坦克自发移动 / 坦克与子弹消失、Vector集合---多线程对象存储、图片导入与绘制)

线程 - 应用到坦克大战一、坦克大战3.0版本1、增强功能 用户按下J键,我方坦克发射一颗子弹2、思路3、实现代码Shot类① 发射相当于一个子功能,且需要不断发射,所以当作一个线程 --> 实现Runnable② 在run方法中是实现子弹移动–>需要子弹方向direct③ 且需要不停地自动移动–>while(true)控制 -->在碰壁时退出循环④ 必须休眠,不然会导致还没有重绘,子弹就碰壁销毁//把发射作为一个线程public class Shot

2023-07-26 15:04:26 408

原创 JAVA笔记(二十二):多线程基础、Thread、Runnable、守护线程、线程生命周期、线程同步、互斥、死锁、释放锁

①线程是由进程创建的,是进程的一个实体;② 一个进程可以拥有多个线程,就比如迅雷可以同时(包括并发和并行)下载多个文件。③进程是资源分配的基本单位,线程是调度的基本单位(1)Java语言中,引入了对象互斥锁(锁在对象上,由线程去抢夺锁)的概念,来保证共享数据操作的完整性;(2)每个对象都对应于一个可称为“互斥锁”的标记,这个标记用来保证在任意时刻,只能有一个线程访问该对象;

2023-07-25 21:02:38 128

原创 【IDEA】JConsole监控线程

【代码】【IDEA】JConsole监控线程。

2023-07-24 14:45:46 356

原创 JAVA笔记(二十一):坦克大战【一】(Java绘图----绘制坦克、事件处理机制----坦克移动)

在这里,第一次在屏幕显示,所以系统自动调用。

2023-07-24 10:59:08 923

原创 JAVA笔记(二十):泛型、JUnit代码测试工具(@Test)

泛(广泛)型(类型)一句话:泛型可以表示其他数据类型,表示什么数据类型由程序员指定(E = Integer或者Dog或者String)(1)泛型又称参数化类型,是JDK5.0出现地新特性,解决数据类型的安全性问题;(2)在类声明或实例化时只要制定好需要的具体的类型即可;(3)Java泛型可以保证如果程序在编译时没有发出警告,运行时就不会产生ClassCastException异常,同时,代码更简洁、健壮;

2023-07-23 16:48:27 700

原创 【idea设置】debug时如何显示null

点进设置:

2023-07-23 12:18:14 349

原创 JAVA笔记(十九):Set(HashSet...)、Map(HashMap...)、Collections工具类

① HashMap底层维护了Node类型的数组table,默认为null;② 当创建对象时,将加载因子(loadfactor)初始化为0.75;③ 当添加key-val时,通过key的哈希值得到在table的索引,然后判断该索引处是否有元素如果没有元素则直接添加。如果该索引处有元素,继续判断该元素的key和准备加入的key是否相等如果相等,则直接替换val如果不相等需要判断是树结构还是链表结构,做出相应处理。如果添加时候发现容量不够,则需要扩容;④第一次添加。

2023-07-23 12:16:47 107

原创 JAVA笔记(十八):集合、Collection、List、ArrayList、Vector、LinkedList

下面是对 Collection 的细化前面 Collection 的方法,是 List 和 Set 接口都有的现在讲只针对 List 的方法① List集合类中元素有序(即添加顺序和取出顺序一致)、且可重复;② List集合中的每个元素都有其对应的顺序索引(即对于List容器中的每个元素,都有一个整数型的序号记载其在容器中的位置,可以根据序号存取容器中的元素)即支持索引;//hsp③ List接口的实现类不止有ArrayList、LinkedList、Vector,还有很多(1)

2023-07-21 21:43:37 140

原创 JAVA笔记(十七):Math类、日期类、System类、Arrays类、BigInteger类、BigDecimal类、常用类章作业

Calendar是一个抽象类, 并且构造器是private可以通过 getInstance() 来获取实例//创建日历类对象 System . out . println("c=" + c);提供大量的方法和字段提供给程序员//1.获取日历对象的某个日历字段 System . out . println("年:" + c . get(Calendar . YEAR));System . out . println("月:" +(c . get(Calendar . MONTH) + 1));

2023-07-21 15:50:27 76

原创 JAVA笔记(十六):包装类、String类、StringBuffer、StringBuider

重点:String、StringBuffer、StringBuilder的区别和使用场景

2023-07-18 21:51:57 201

原创 JAVA笔记(十五):枚举类、注解、异常

不需要提供setXxx方法,因为枚举对象值通常为只读对枚举对象/属性使用final+static修饰,实现底层优化(类不用加载)枚举对象名通常使用全部大写,常量的命名规范枚举对象根据需要,也可以有多个属性} } //演示自定义枚举实现 class Season {

2023-07-18 12:20:23 384

原创 JAVA笔记(十四):接口、内部类

重点:匿名内部类、接口的使用

2023-07-16 21:21:07 178

原创 JAVA笔记(十三):类变量和类方法、main方法深入理解、代码块、单例设计模式、final关键字、抽象类抽象方法

main方法是虚拟机调用(java虚拟机和main方法不在同一个包)==》解释为什么是publicJava虚拟机需要调用类的main()方法,所以该方法的访问权限必须是publicjava虚拟机在执行main()方法时不必创建对象,所以该方法必须是static代码块又称初始化块,属于类中的成员。没有方法名,没有返回,没有参数,只有方法体。不用通过对象或类显示调用,而是加载类时,或创建对象时隐式调用。(静态代码块在类加载时就会调用一次,且仅调用一次)(普通代码块在创建对象时就会调用一次,可调多次)

2023-07-16 10:25:13 135

原创 JAVA笔记(十二):房屋出租系统

主菜单新增房源查找房屋删除房屋修改房源如果不希望修改某个信息,则直接回车即可房屋列表退出系统。

2023-06-29 21:17:57 403

原创 JAVA笔记(十一):断点调试、零钱通项目、章作业

4. 支持在断点调试过程中,动态下断点。可以在自身的代码中下断点,也可以在系统代码中下断点。y/n”,必须输入正确的y/n,否则循环输入指令,直到输入y或者n。多态:方法或对象具有多种形态,是OOP的第三大特征,是建立在封装和继承基础之上。② 在收益入账和消费时,判断金额是否合理,并给出相应的提示。可以完成收益入账,消费,查看明细,退出系统等功能。注意:一段代码,完成一个小功能,尽量不要混在一起。思路:(1)可以把收益入账和消费,保存到数组。的条件,然后给出提示,提示完直接break。

2023-06-29 10:13:57 212

原创 JAVA学习笔记(十):java动态绑定机制、super和this比较、方法重写和重载、Object类(equals、hashCode、toString、finalize)

super代表父类的引用,用于访问父类的属性、方法、构造器。简单来说就是子类的方法和父类的方法一摸一样,那么就说子类的这个方法覆盖了父类的方法。C->B->A,C中hi()和A中的hi()一样那么就说C的hi()覆盖了A的hi()方法覆盖会导致调用的时候,会只调用子类的hi()方法,不会调用父类的hi()方法。

2023-06-28 11:59:07 138

原创 JAVA学习笔记(九):面向对象的三大特征

很重要很重要,尤其继承和多态

2023-06-16 16:39:08 167

原创 JAVA学习笔记(八):IDEA的使用、包、四种访问修饰符

包括IDEA常用快捷键、包的概念、四种访问修饰符的访问范围(重点)

2023-06-16 14:27:29 207

原创 JAVA学习笔记(七):方法重载、可变参数、局部变量和全局变量作用域、构造器、this关键字、练习题(数据异常处理、复用构造器、每次调用方法前属性的修改、猜拳游戏)

①重点:局部变量和全局变量的作用域、对象创建的流程分析 ②练习题:数据异常处理(返回null),每次调用方法前如果需要修改对象的属性,应该调用另一个方法实现属性修改

2023-04-23 12:33:12 213 1

原创 猜拳游戏 JAVA代码实现

猜拳游戏java模拟实现,包含设计思路和具体实现

2023-04-23 11:51:40 85

原创 【idea设置】idea去掉用法、继承提示

敲代码的时候感觉用法提示太占位置了,这篇文章写了怎么把用法提示去掉

2023-04-22 08:27:10 511 1

原创 idea反编译操作

在idea里执行反编译操作

2023-04-21 15:30:20 1270

原创 JAVA学习笔记(六):类和对象(内存布局、属性、成员方法传参机制)、克隆对象、递归(阶乘、斐波那契、猴子吃桃、迷宫、汉诺塔、八皇后)

①类和对象 ②递归 ③经典习题:斐波那契、汉诺塔、迷宫、八皇后

2023-04-21 14:00:27 168

原创 八皇后算法原理理解 递归回溯算法 JAVA代码实现

八皇后问题思考、理解、代码实现。较为深入剖析了递归的机制,以及回溯机制。

2023-04-21 12:48:18 178

原创 JAVA学习笔记(五):数组(拷贝、翻转、扩容、缩容)、排序(冒泡)、查找、二维数组(杨辉三角)、向数组中插入一个元素

重点:数组和二维数组的存储机制例子:杨辉三角、向升序数组中插入一个数

2023-04-21 07:47:32 232

原创 JAVA学习笔记(四):循环结构(for\while等)、跳转控制(break\continue\return)、随机数(random)

练习题:空心金字塔、水仙花数、每N个数据为一行打印

2023-04-20 09:15:21 143

空空如也

空空如也

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

TA关注的人

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