随笔分类 -  JAVA

数据结构
摘要:时间复杂度与空间复杂度这些都是算法时空复杂度的表示。不仅仅用于表示时间复杂度,也用于表示空间复杂度。O后面的括号中有一个函数,指明某个算法的耗时/耗空间与数据增长量之间的关系。其中的n代表输入数据的量。 O(1)解析 O(1)就是最低的时空复杂度了,也就是耗时/耗空间与输入数据大小无关,无论输入数据 阅读全文

posted @ 2020-05-17 15:59 JAVA-ROAD

List集合
摘要:集合底层使用动态数组实现,随机查询效率非常快,插入和删除需要移动整个数组、效率低,ArrayList不是线程安全的、 Vector是线程安全的集合。 Arraylist与Vector集合 相同点: 都是实现与List接口、底层采用数组实现 不同点: Arraylist线程不安全、Vector线程是安 阅读全文

posted @ 2020-05-17 14:56 JAVA-ROAD

Java8-Stream
摘要:一. 什么是 StreamStream 中文称为 “流”,通过将集合转换为这么一种叫做 “流” 的元素序列,通过声明性方式,能够对集合中的每个元素进行一系列并行或串行的流水线操作。 二. 流操作 整个流操作就是一条流水线,将元素放在流水线上一个个地进行处理。 其中数据源便是原始集合,然后将如 Lis 阅读全文

posted @ 2020-04-22 08:34 JAVA-ROAD

文件读写
摘要:import java.io.*; public class FileIO { public static void writeFileLine(String file,String data) throws IOException { BufferedWriter bw=null; try { b 阅读全文

posted @ 2020-03-02 19:40 JAVA-ROAD

HashMap原码分析
摘要:hashMap的put原理 1、使用key计算hashcode存放到数据中; 2、如果存入的key出现hash碰撞的情况,此时用equals对key进行判断,相等则表示是同一个key修改了值,此时存放进行覆盖,如果equals不相等,表示hashcode碰撞了,数据入存链表[LinkList]中; 阅读全文

posted @ 2020-02-24 20:33 JAVA-ROAD

获取Linux中etho和ens33网卡的ip
摘要:String ip = ""; try { Enumeration<?> e1 = NetworkInterface.getNetworkInterfaces();//获取多个网卡 while (e1.hasMoreElements()) { NetworkInterface ni = (Netwo 阅读全文

posted @ 2020-02-21 21:22 JAVA-ROAD

单例模式
摘要:1、饿汉式 1 /** 2 * 饿汉式:类一加载就创建,迫不及待的样子就是饿汉了 3 * 优点:天生的线程安全 4 * 缺点:饿汉式类多了就会影响项目启动效率 5 */ 6 public class SingleInstance01 { 7 /** 8 * 私有化构造函数,给出指定方法获取;因是静态 阅读全文

posted @ 2020-02-21 16:29 JAVA-ROAD

JVM垃圾回收机制和算法
摘要:1、怎么判断一个对像是否要被回收? 引用计数法:判断该对像是否被引用; 阅读全文

posted @ 2019-12-19 16:02 JAVA-ROAD

java内存结构
摘要:1、内存结构图 2、栈 操作数栈:每一个方法就是一个栈帧;每一个独立的栈帧中除了包含局部变量表以外,还包含一个后进先出(Last-In-First-Out)的操作数栈,也可以称之为表达式栈(Expression Stack)。操作数栈和局部变量表在访问方式上存在着较大差异,操作数栈并非采用访问索引的 阅读全文

posted @ 2019-12-19 11:28 JAVA-ROAD

JAVA-集合
摘要:1、ArrayList:add的时候才开始初始化; 2、copyonwriteArraylist:线程安全 3、Vector:创建的时候就初始化了10个大小的容量; ArrayList:是线程不安全的,arrayList扩容是50%; Vector是线程安全的,vector的添加,查询,新增,删除都 阅读全文

posted @ 2019-11-06 16:55 JAVA-ROAD

导航