12 2019 档案

摘要:Java基本类型长度及对应对象的字节长度基本类型 长度 the size of an objectInt 4 16Short 2 16Long 8 24Byte 1 16Character 1 16Float 4 16Double 8 24 在JDK1.8中可以采用ObjectSizeCalcula 阅读全文
posted @ 2019-12-26 11:17 gaopengpy
摘要:举个小例子来看看,如果重写了equals而不重写hashcode会发生什么样的问题: 运行结果: 结果:null 如果我们已经对HashMap的原理有了一定了解,这个结果就不难理解了。尽管我们在进行get和put操作的时候,使用的key从逻辑上讲是等值的(通过equals比较是相等的),但由于没有重 阅读全文
posted @ 2019-12-18 11:37 gaopengpy
摘要:在哈希表中进行添加,删除,查找等操作,性能十分之高,不考虑哈希冲突的情况下,仅需一次定位即可完成,时间复杂度为O(1),哈希表是如何实现达到惊艳的常数阶O(1)的呢? 我们知道,数据结构的物理存储结构只有两种:顺序存储结构和链式存储结构(像栈,队列,树,图等是从逻辑结构去抽象的,映射到内存中,也这两 阅读全文
posted @ 2019-12-18 09:08 gaopengpy
摘要:1.基本类型是值传递 运行结果: param= 2a= 1 2.对象封装是引用传递 运行结果: my name is wuqimy name is wuqi 3.String类型可以看作是值传递 运行结果: my name is wuqimy name is wutianqi 阅读全文
posted @ 2019-12-17 12:37 gaopengpy
摘要:HashMap默认的负载因子大小为0.75,也就是说,当一个map填满了75%的bucket时候,和其它集合类(如ArrayList等)一样,将会创建原来HashMap大小的两倍的bucket数组,来重新调整map的大小,并将原来的对象放入新的bucket数组中。这个过程叫作rehashing,因为 阅读全文
posted @ 2019-12-17 10:48 gaopengpy
摘要:Linux下安装Tomcat 1.上传压缩包至 /usr/local 下 2.解压缩 tar -zxvf apache-tomcat-9.0.29.tar.gz 3.修改文件夹名称为tomcat mv apache-tomcat-9.0.29 tomcat 4.配置环境变量 (1)编辑配置文件vim 阅读全文
posted @ 2019-12-11 18:19 gaopengpy
摘要:队列(Queue)和主题(Topic)是JMS支持的两种消息传递模型: 1、点对点(point-to-point,简称PTP)Queue消息传递模型: 通过该消息传递模型,一个应用程序(即消息生产者)可以向另外一个应用程序(即消息消费者)发送消息。在此传递模型中,消息目的地类型是队列(即Destin 阅读全文
posted @ 2019-12-06 14:20 gaopengpy
摘要:用Collections.sort方法对list排序有两种方法 第一种方法是根据Collections.sort重载方法来实现,如下: 第二种是list中的对象实现Comparable接口,如下: 阅读全文
posted @ 2019-12-06 14:06 gaopengpy
摘要:CPU密集型(CPU-bound)CPU密集型也叫计算密集型,指的是系统的硬盘、内存性能相对CPU要好很多,此时,系统运作大部分的状况是CPU Loading 100%,CPU要读/写I/O(硬盘/内存),I/O在很短的时间就可以完成,而CPU还有许多运算要处理,CPU Loading很高。 在多重 阅读全文
posted @ 2019-12-05 14:38 gaopengpy
摘要:线程池合理的线程数你是如何考虑的?: 1.先看下机器的CPU核数,然后在设定具体参数: System.out.println(Runtime.getRuntime().availableProcessors()); 即CPU核数 = Runtime.getRuntime().availablePro 阅读全文
posted @ 2019-12-05 14:37 gaopengpy
摘要:HashMap的实现原理 1.利用key的hashCode重新hash计算出当前对象的元素在数组中的下标。 2.存储时,如果出现hash值相同的key,此时有两种情况。(1)如果key相同,则覆盖原始值;(2)如果key不同(出现冲突),则将当前的key-value放入链表中。 3.获取时,直接找到 阅读全文
posted @ 2019-12-04 11:21 gaopengpy
摘要:悲观锁总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁(共享资源每次只给一个线程使用,其它线程阻塞,用完后再把资源转让给其它线程)。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操 阅读全文
posted @ 2019-12-04 10:55 gaopengpy
摘要:使用SpringBoot同步微信公众号的粉丝详情,由于粉丝数量不多,一次拉取足矣,数量很多的话要改造为多线程模式。 项目结构如下: POM添加依赖: <!-- json工具类 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fa 阅读全文
posted @ 2019-12-02 16:31 gaopengpy