java
文章平均质量分 58
请叫我Oscar
这个作者很懒,什么都没留下…
展开
-
代码随想录-107-96.不同的二叉搜索树
我在刷卡哥的“代码随想录”,自己的总结笔记均会放在“算法刷题-代码随想录”该专栏下。原创 2023-07-21 10:19:48 · 341 阅读 · 0 评论 -
leetcode-146. LRU 缓存
如果键不存在,则创建一个新节点,并插入到链表尾部,同时检查缓存容量是否超出限制,如果超出则删除链表头部的节点。相比较,单向链表如果只有一个虚拟头结点,他只能以O(1)的时间复杂度在头部获取、删除、添加节点)。LRU算法是一种缓存淘汰策略,它认为最近使用过的数据应该是有用的,而很久都没用过的数据应该是无用的,所以当缓存满了时,优先删除最久未使用的数据。LRU算法的时间复杂度为 O (1),因为哈希表和双向链表的操作都是常数时间的。这时候考虑到链表的删除和插入的时间复杂度都为O(1),所以考虑使用链表。原创 2023-05-07 15:33:33 · 184 阅读 · 0 评论 -
java中怎么比较两个自定义实体对象是否相等(比如在Set数据结构中去重)
Java中所有类都继承自Object类,该类拥有equals方法,对象之间比较大小都是默认调用equals方法(可能会重写该方法),比如最常见的Integer或者String类对象,之间比较大小都是默认重写并调用了该方法。下面的String,Integer源码解析,引用大佬文章,Java Set对象去重java.lang.Integer.equals():两个对象对应的值一致则返回true。//同一个对象,必定是一致的 return true;原创 2023-03-16 11:17:17 · 3734 阅读 · 0 评论 -
普及json格式相关问题
首先要明白,以 { } 开头的是JSONObject,以 [ ] 开头的是JSONArray,如果本身就是json字符串的格式(即格式类型为String),那就不用转换,直接使用转换方法进行转换。但是如果是嵌套字符串的话,从第一次转换后的java对象中取出来的是Object类型,这时候需要先用toString方法转换为String类型,然后再调用方法。参考博文。原创 2023-03-06 16:15:36 · 442 阅读 · 0 评论 -
java中文件的输入和输出
以下所有对象需要关闭(close)的,都使用jdk1.7的。原创 2022-08-05 18:05:58 · 4098 阅读 · 0 评论 -
java中为什么split无法分割空格
后面发现是自己接收字符串的next函数问题next():1、一定要读取到有效字符后才可以结束输入。以空格、回车、Tab键都会视为结束符。。2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。nextLine():1、以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。所以相当于,自己输入的空格在最开始直接被next函数直接抛弃了,所以导致判断不了空格。...原创 2021-05-20 20:18:48 · 1166 阅读 · 0 评论 -
多个子类共享继承自父类的静态(static)属性
我有个需求是:继承自同一个父类的多个子类要继承父类的一个静态属性。(就比如说父类为人,有静态属性名字,子类男人,女人都要继承名字这个静态属性)在实际编码中,我发现有趣的现象,多个子类其实是共享父类的静态属性的。具体是什么意思,请看下面我举的一个例子。首先是类图,父类是AbstractClass,他有两个子类分别是ConcreteClass1,ConcreteClass2。父类有一个静态属性是Form类型的变量。两个子类分别对这个继承自父类的静态属性赋值。ConcreteClass1赋值如下:1原创 2021-05-03 09:56:46 · 3149 阅读 · 1 评论 -
eclipse中import existing projects into workspace和open projects from file systems分别有什么用?
初看上去感觉这两个没啥区别,一个是import existing projects into workspace,就是导入文件;一个是open projects from file systems,就是打开文件。但真的是这样的吗?比如,想象这样一个场景,我们在A电脑上创建一个java工程文件,但是现在需要在B电脑上运行,所以我们要把这个java工程文件导入到B电脑的eclipse中运行。那么这个时候我们就可以通过“import existing projects into workspace”将A电脑原创 2021-04-04 19:40:53 · 4952 阅读 · 4 评论 -
java中怎么生成键值对的数据对象
提到java的键值对对象,相信大家第一反应就是HashMap、LinkedMap这些数据结构,但是今天我想要介绍另一个是使用阿里巴巴提供的FastJSON中的JSONObject对象。比如,我有一个需求,就是传入一个字符串数组,然后到数据库中查找对应字符串的值,最后返回一个以字符串为“键”,以字符串对应的值为“值”的“键值对”对象。那么我可以使用JSONObject对象的put函数,将对应的“键”,“值”存入一个元素中。以下为一个例子,比如我输入一个“代表日期”的字符串数组,通过dnsQueriesDa原创 2021-03-25 22:12:40 · 2757 阅读 · 0 评论 -
java Project(不是Dynamic Web Project)怎么导入jar包?
新建一个java Project项目在文件下新建一个folder(文件夹),名字随意,我这里叫做“lib”然后把自己想要导入的jar包导入右键点击jar包,选择“Build Path”,再选择“Add to Build Path”这时候发现在"Referenced Libraries"下多了jar依赖,这时候就可以在java Project中使用这个jar包了!!...原创 2021-03-22 17:33:11 · 232 阅读 · 0 评论