随笔分类 -  Java

摘要:目录简介常用方法操作范例 简介 Collections是java.util包下的集合工具类,定义了除了存取以外的集合常用方法。 常用方法 public static <T extends Comparable<? super T>> void sort(List<T> list) //升序排列(元素 阅读全文
posted @ 2020-10-12 15:17 雨中遐想 阅读(108) 评论(0) 推荐(0)
摘要:目录1 Map父接口2 HashMap2.1 HashMap的定义2.2 HashMap使用3 Hashtable(不使用)4 Properties5 TreeMapHashMap HashTable TreeMap区别 1 Map父接口 特点:存储一对数据(Key-Value),无序、无下标,键不 阅读全文
posted @ 2020-10-12 13:48 雨中遐想 阅读(91) 评论(0) 推荐(0)
摘要:String类已经实现了Comparable接口,我们可以根据TreeSet提供的构造器传入自己的比较器。 public class Set4 { public static void main(String[] args) { Set<String> stringSet = new TreeSet 阅读全文
posted @ 2020-10-10 00:04 雨中遐想 阅读(258) 评论(0) 推荐(0)
摘要:目录1 Set集合2 常用方法3 实现类3.1 HashSet[重点]3.2 TreeSet4 HashSet和TreeSet区别 1 Set集合 一个不包含重复元素的 collection。更确切地讲,set 不包含满足 e1.equals(e2) 的元素对 e1 和 e2,并且最多包含一个 nu 阅读全文
posted @ 2020-10-09 23:28 雨中遐想 阅读(224) 评论(0) 推荐(0)
摘要:LinkedList是使用双向链表实现的。 阅读全文
posted @ 2020-10-08 12:27 雨中遐想 阅读(109) 评论(0) 推荐(0)
摘要:在看ArrayList源码的时候发现用到了System.arraycopy方法。 line 544 private void fastRemove(int index) { modCount++; int numMoved = size - index - 1; if (numMoved > 0) 阅读全文
posted @ 2020-09-25 09:37 雨中遐想 阅读(189) 评论(0) 推荐(0)
摘要:目录1 概述2 常用实现类3 常用方法4 使用范例4.1 ArrayList4.2 Vector(不使用)4.3 LinkedList集合使用4.3.1 LinkedList源码解析4.4 ArrayList与LinkedList的区别 1 概述 List是一个接口,继承自Collection接口。 阅读全文
posted @ 2020-09-24 22:56 雨中遐想 阅读(194) 评论(0) 推荐(0)
摘要:目录Collection接口常用方法存放String类型存放自建对象Collection和Collections的区别 Collection接口常用方法 int size();//集合大小 boolean isEmpty();//是否为空 boolean contains(Object o);//是 阅读全文
posted @ 2020-09-24 22:13 雨中遐想 阅读(394) 评论(0) 推荐(0)
摘要:目录List删除指定元素 List删除指定元素 ArrayList的删除元素方法public boolean remove(Object o)只能删除第一次出现的情况,如果想要删除集合中全部位置出现过该元素的可以使用下面的方法 import java.util.ArrayList; import j 阅读全文
posted @ 2020-09-24 22:02 雨中遐想 阅读(1226) 评论(0) 推荐(0)
摘要:目录1、线程的同步产生的原因2、线程的同步处理操作3、线程的死锁情况排查死锁的方式:请解释多个线程访问统一资源时需要考虑哪些情况?有可能带来哪些后果? 概念:Java同步和异步,阻塞和非阻塞 1、线程的同步产生的原因 没有同步的情况 class MyThread1 implements Runnab 阅读全文
posted @ 2020-09-11 08:23 雨中遐想 阅读(159) 评论(0) 推荐(0)
摘要:目录线程命名和取得线程的休眠线程优先级(priority) 线程命名和取得 如果想要进行线程名称的操作,可以使用Thread类的如下方法: 构造方法:public Thread(Runnable target,String name); 设置名字:public final void setName( 阅读全文
posted @ 2020-09-10 22:59 雨中遐想 阅读(200) 评论(0) 推荐(0)
摘要:目录继承Thread类实现Runnable接口实现Callable接口 如果要想在Java中实现多线程的三种途径: 继承Thread类; 实现Runnable接口; 实现Callable接口; 继承Thread类 需要覆写Thread类中的run方法。 package thread; //线程操作主 阅读全文
posted @ 2020-09-10 10:56 雨中遐想 阅读(130) 评论(0) 推荐(0)
摘要:目录1、Lambda表达式介绍2、Lambda表达式语法细讲3、 Lambda表达式语法精简4、 Lambda方法引用5、 综合实例6、 @FunctionalInterface注解7、内建函数式接口 1、Lambda表达式介绍 package com.zjw; /** * Lambda表达式介绍 阅读全文
posted @ 2020-09-10 10:32 雨中遐想 阅读(168) 评论(0) 推荐(0)
摘要:目录泛型的好处泛型类通配符设置泛型的上限设置泛型的下限泛型接口泛型方法 泛型的好处 提高代码的重用性(减少重载) 防止类型转换异常,提高代码的安全性 泛型类 注意 1、泛型只能使用引用类型 2、不同泛型类型对象之间不能相互赋值 package com.test; class Point<T>//实例 阅读全文
posted @ 2020-09-08 18:59 雨中遐想 阅读(138) 评论(0) 推荐(0)
摘要:可变参数 public class Test01 { public static void main(String[] args) { System.out.println(add(123)); System.out.println(add(1,2,3)); System.out.println(a 阅读全文
posted @ 2020-09-08 18:35 雨中遐想 阅读(100) 评论(0) 推荐(0)
摘要:1、异常的产生以及对程序的影响 10/0 异常产生后,打印出异常信息,中断程序的继续执行。 我们要做的就是即使异常也要让程序继续正确的执行下去。 2、异常处理的格式 try{ //有可能出现异常的代码 }[catch(异常类型 对象){ //异常处理 } catch(异常类型 对象){ //异常处理 阅读全文
posted @ 2020-09-08 18:32 雨中遐想 阅读(244) 评论(0) 推荐(0)
摘要:/** * 多例设计模式:可以根据输入的参数不同返回不同的实例化对象 * 1、构造私有化 * 2、输入的参数不同 * 2017-09-11 * @author Junwei Zhu * */ class Sex { private String title ; private static fina 阅读全文
posted @ 2020-09-08 18:03 雨中遐想 阅读(179) 评论(0) 推荐(0)
摘要:目录1、懒汉模式2、饿汉模式3、静态内部类4、反射攻击5、枚举类型6、序列化 1、懒汉模式 class LazySingleton{ //volatile防止指令重排 private static volatile LazySingleton SINGLETON ; //构造方法私有化 privat 阅读全文
posted @ 2020-09-08 17:38 雨中遐想 阅读(121) 评论(0) 推荐(0)
摘要:/** * 临幸问题(代理设计模式) * 2017-08-25 * @author Junwei Zhu * */ //整个操作的核心主题 interface Subject { public void make();//整个临幸的核心功能 } class RealSubject implement 阅读全文
posted @ 2020-09-08 12:59 雨中遐想 阅读(78) 评论(0) 推荐(0)
摘要:/** * 工厂类:用于连接接口和子类,尽量减少客户端的复杂性 * 2017-08-25 * @author Junwei Zhu * */ interface Fruit { public void eat(); } //工厂类:用于连接接口和子类,可以被客户端看到 class Factory { 阅读全文
posted @ 2020-09-08 12:57 雨中遐想 阅读(212) 评论(0) 推荐(0)