
Java
文章平均质量分 60
lhj_loveFang_1105
稳住不慌
展开
-
Java8流式计算相关
Java流式计算原创 2023-01-08 17:01:20 · 752 阅读 · 0 评论 -
Logback配置详解
logback配置原创 2023-01-08 16:58:35 · 6038 阅读 · 1 评论 -
DevOps思想
什么是DevOps原创 2021-07-07 11:32:58 · 184 阅读 · 0 评论 -
Java基础扩充~
JVM 会在编译时期将 boolean 类型的数据转换为 int,使用 1 来表示 true,0 表示 false。new Integer(123) 每次都会新建一个对象;Integer.valueOf(123) 会使用缓存池中的对象,多次调用会取得同一个对象的引用。valueOf() 方法的实现比较简单,就是先判断值是否在缓存池中,如果在的话就直接返回缓存池的内容。String 被声明为 final,因此它不可被继承。(Integer 等包装类也不能被继承)在 Java 8 中,String .原创 2021-04-02 12:18:54 · 143 阅读 · 0 评论 -
Java中的反射及常见API
概述每个类都有一个 Class 对象,包含了与类有关的信息。当编译一个新类时,会产生一个同名的 .class 文件,该文件内容保存着 Class 对象。通过反射,我们可以在运行时获得程序或程序集中每一个类型的成员和成员的信息。程序中一般的对象的类型都是在编译期就确定下来的,而 Java 反射机制可以动态地创建对象并调用其属性,这样的对象的类型在编译期是未知的。所以我们可以通过反射机制直接创建对象,即使这个对象的类型在编译期是未知的。主要用途反射最重要的用途就是开发各种通用框架。很多框架(比如原创 2021-03-27 18:08:42 · 1183 阅读 · 1 评论 -
Java中泛型常见面试题
Java中的泛型是什么 ? 使用泛型的好处是什么?在集合中存储对象并在使用前进行类型转换是多么的不方便。泛型防止了那种情况的发生。它提供了编译期的类型安全,确保你只能把正确类型的对象放入集合中,避免了在运行时出现ClassCastException。Java的泛型是如何工作的 ? 什么是类型擦除 ?泛型是通过类型擦除来实现的,编译器在编译时擦除了所有类型相关的信息,所以在运行时不存在任何类型相关的信息。什么是泛型中的限定通配符和非限定通配符 ?限定通配符对类型进行了限制。有两种限定通配符,一种是.原创 2021-03-27 17:10:16 · 215 阅读 · 0 评论 -
ArrayList和LinkedList详解
ArrayListArrayList底层是用数组实现的存储。特点:查询效率高,增删效率低,线程不安全。使用频率很高。通过无参构造方法的方式ArrayList()初始化,则赋值底层数Object[] elementData为一个默认空数组Object[] DEFAULTCAPACITY_EMPTY_ELEMENTDATA = {}所以数组容量为0,只有真正对数据进行添加add时,才分配默认DEFAULT_CAPACITY = 10的初始容量。扩容1.第一步他会重新定义一个原创 2021-03-23 19:45:30 · 408 阅读 · 0 评论 -
HashMap超详细介绍
概述HashMap是我们非常常用的数据结构,由数组和链表组合构成的数据结构。大概如下,数组里面每个地方都存了Key-Value这样的实例,在Java7叫Entry在Java8中叫Node。因为他本身所有的位置都为null,在put插入的时候会根据key的hash去计算一个index值。哈希冲突当遇到哈希冲突,可以使用链地址法:每一个节点都会保存自身的hash、key、value、以及下个节点,我看看Node的源码。哈希冲突时节点如何插入链表java8之前是头插法,就是说新来的值会取代原原创 2021-03-23 17:50:31 · 642 阅读 · 0 评论 -
MySQL中的CRUD操作( Create, Retrieve,Update,Delete)
1. 新增(Create)1》全列插入insert into [表名] values (对应列数据);2》指定列插入insert into [表名] (若干指定列) values (对应列数据)没有被插入的列默认为null3》一次插入多条记录insert into [表名] values (对应列数据) ,(对应列数据)。。。2.查询(Retrieve)1》全列查询select * from [表名];2》指定列查询select [列名] from [表名];3》查询字段为表达原创 2020-05-25 21:49:39 · 1457 阅读 · 2 评论 -
初识MySQL
1.数据库是啥数据库是一个软件,是非常依赖数据结构的,是组织并存储数据的软件,一般是存储再硬盘上,也有再内存中的。2.数据库分类数据库可分为:关系型数据库和非关系型数据库①关系型数据库:数据的组织形式使用“表”,得有个表头,表头约定很多列,插入的数据就是表中的一行,每一行都需要和表头结构对应,并且对数据的约束比较强。(适用于大部分场景)例如:MySQL,Oracle,SQL sever。。。②非关系型数据库:数据组织形式使用“键值对”,需要指定key和value,每组数据的value包含哪些字段原创 2020-05-23 16:16:42 · 242 阅读 · 0 评论 -
Java中的反射,枚举,lambda
1.反射JAVA中反射是动态获取信息以及动态调用对象方法的一种反射机制。Java反射就是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;并且能改变它的属性。而这也是Java被视为动态语言的一个关键性质。先定义一个类,用以操作该类:class Cat { private String name = "秘密"; public Cat(String name) { this.name = name;原创 2020-05-22 20:20:53 · 483 阅读 · 0 评论 -
Java中数据结构知识框架
原创 2020-05-22 16:51:54 · 164 阅读 · 0 评论 -
Java中关于Map,Set问题之只出现一次的数字,复制带随机指针的链表,宝石与石头,前K个高频单词
1.只出现一次的数字public int singleNumber(int[] nums) { Map<Integer,Integer> map = new HashMap<>(); for (int x:nums) { Integer count = map.get(x); if (count == null) { map.put(x,1);原创 2020-05-15 17:43:54 · 175 阅读 · 0 评论 -
Java中的Map和Set
public class TestMap { //一个Map只能维护一组映射关系,若需要多组映射,就需要多个Map。 //只能通过key找到value //对于get方法,如果key不存在,返回null //对于getOrDefault,如果key不存在,返回默认值 //put方法若key不存在,就会创建新的键值对 //若存在,就会修改value的值 public static void main(String[] args) { S原创 2020-05-15 16:53:48 · 235 阅读 · 0 评论 -
Java中对二叉搜索树进行增删改查
二叉搜索树是一个比较特殊的二叉树,就是所有节点的值都大于她的左子树的值,小于她的右子树的值,当对二叉搜索树进行中序遍历时,他就是一个排好序的递增序列。1.二叉搜索树节点定义 static class Node { public int key; public int value; public Node left; public Node right; public Node(int原创 2020-05-14 17:58:12 · 450 阅读 · 2 评论 -
Java中的插入排序,希尔排序,选择排序,堆排序,冒泡排序,快速排序,归并排序
这里的排序都以升序为例1.插入排序public static void insertSort(int[] array) { for (int bound = 1;bound<array.length;bound++) { int tmp = array[bound]; int cur = bound-1; for (;cur>=0;cur--) { if (array[cu原创 2020-05-11 15:32:38 · 254 阅读 · 0 评论 -
java中用优先队列解决最后一块石头重量问题
问题如下:遇到这种选出最重最大最小的问题,首先我们就想到可以用优先队列来解决。public int lastStoneWeight(int[] stones) { PriorityQueue<Integer> queue = new PriorityQueue<>((o1, o2) -> o2-o1); for(i...原创 2020-05-07 18:00:59 · 262 阅读 · 0 评论 -
java中合并二叉树
题目如下: private TreeNode buildTree(TreeNode t1,TreeNode t2) { TreeNode node = new TreeNode(-1); if(t1 == null && t2 == null) { return null; } if(t1 ...原创 2020-05-03 21:07:46 · 797 阅读 · 0 评论 -
Java中的插入排序和希尔排序
1.插入排序 //升序为例 public static void insertSort(int[] array) { for (int bound = 1;bound<array.length;bound++) { int tmp = array[bound]; int cur = bound-1; ...原创 2020-05-02 21:33:12 · 149 阅读 · 0 评论 -
Java中用优先队列解决top-K问题
原创 2020-05-02 21:08:04 · 315 阅读 · 0 评论 -
JAVA中的堆
1.堆堆实际上就是用数组将一个完全二叉树存起来,堆的主要用途就是用来找集合中的最大值和最小值,也可以解决top-K问题,就是类似找出第一最大值,第二最大值。。。。1》堆可以分为:大堆和小堆大堆:树中的任意节点,节点值必须大于左右孩子的值小堆:树中的任意节点,节点值必须小于左右孩子的值2》堆的调整操作:向上调整(除根结点外,其他结点都符合堆的要求)对象:大堆小堆private vo...原创 2020-05-02 20:41:26 · 398 阅读 · 0 评论