Java基础
梦里梦见梦不见的
这个作者很懒,什么都没留下…
展开
-
二叉树、B树、B+树、红黑树
一、二叉树定义:即每个结点都最多只有两个子结点的树 完全二叉树:高度为k的二叉树,其1~h-1层为满结点,且其h层(叶子结点层)的节点从左至右依次排列(最多2^h-1个,最少0个) 满二叉树:除最后一层外,每个结点都有左右子结点的二叉树 平衡二叉树:任一结点的左右子树的高度差绝对值不超过1,且左右子树均为平衡二叉树(防止树退化成链表) 二、红黑树本质:自平衡...原创 2020-08-17 15:04:28 · 2015 阅读 · 0 评论 -
数组 链表 哈希表 区别详解
一、数组1、简介数组将元素在内存中连续存放,存储区间是连续的。2、举例体育课上,老师说:同学们站一队,每个人记住自己是第几个,我喊到几,那个人就举手,这就是数组。3、优缺点1.数组必须事先定义固定的长度,不能适应数据动态的增减的情况。当数据增加时,可能超出原先定义的元素个数;当数据减少时,造成内存浪费。2.数组从栈中分配空间,对于程序员方便快速,但是自由度小。3.当进行数据查询时,数组可以直接通过下标迅速访问数组中的元素。4.当进行增加或删除元素时,在数组中增加一个元素,原创 2020-08-14 11:40:27 · 3405 阅读 · 1 评论 -
Java基础细节
1、输出结果是什么?System.out.println(1+2+"a");System.out.println("a"+1+2);第一行输出3a,第二行输出a12因为执行的时候是从左到右的,遇到字符串就会强转为字符串。第一行执行的是:String str=String.valueOf(1+2); String sb=new StringBuffer(str).ap...原创 2019-09-26 11:04:21 · 191 阅读 · 0 评论 -
日期时间工具类
//获取指定日期的前后几天的日期。day为正数代表后几天,负数代表前几天的日期。 public String getDay(Date date,int day) { Calendar c = Calendar.getInstance(); c.setTime(date); int d = c.get(Calendar.DATE); c.set(Calendar.DATE, d+...原创 2019-09-23 14:38:36 · 155 阅读 · 0 评论 -
工厂模式示例
1、工厂import org.springframework.stereotype.Component;import javax.annotation.Resource;/** * <p>Description:获取法人状态工厂,根据不同的法人类型获取法人状态 */@Componentpublic class GetStatusFactory { //...原创 2019-08-08 17:04:20 · 106 阅读 · 0 评论 -
Java后台面试
一、Nginx负载均衡轮询:轮询是默认的,每一个请求按顺序逐一分配到不同的后端服务器,如果后端服务器down掉了,则能自动剔除 ip_hash:请求按访问IP的hash结果分配,这样来自同一个IP的访客固定访问一个后端服务器,有效解决了动态网页存在的session共享问题。 weight:weight是设置权重,用于后端服务器性能不均的情况,访问比率约等于权重之比 fair(第三方):这...原创 2019-02-25 14:47:49 · 582 阅读 · 0 评论 -
单例模式、工厂设计模式
1、单例模式 (1)保证内存中只有一个实例对象存在 (a)构造方法私有化 (b)类中成员位置创建一个对象 (c)提供公开的访问方式 (2)饿汉式:在类加载的时候就创建对象的实例(多线程环境下不会出现问题)public class Singleton { //用static修饰是为了在类加载的时候就创建实例 ...原创 2019-02-22 16:14:14 · 118 阅读 · 0 评论 -
List、Set、Map
原创 2019-02-22 14:58:11 · 86 阅读 · 0 评论