java
Crayon_kk
这个作者很懒,什么都没留下…
展开
-
获取时间
根据所需的格式进行转换//上个月第一天凌晨时间 @Test public void getLastMonthFirstDay() { Calendar cal = Calendar.getInstance(); cal.add(cal.MONTH, -1); cal.set(cal.DAY_OF_MONTH, 1); SimpleDateFormat dft = new Si...原创 2019-03-19 22:23:02 · 102 阅读 · 0 评论 -
生产者/消费者
1、使用Lockpackage com.atguigu.thread.blockqueue.action;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/*...原创 2019-04-19 21:56:02 · 81 阅读 · 0 评论 -
List排序
package com.atguigu.list.sort;import java.util.Arrays;import java.util.List;import org.junit.Test;import com.atguigu.list.pojo.Persion;public class TestListSort { List<Persion> list =...原创 2019-05-02 22:07:52 · 163 阅读 · 0 评论 -
Enum枚举
枚举使用:看成数据版的mysqlpackage com.atguigu.thread.countdownlatch;public enum CountryEnum { // 数据版的Mysql ONE-->表名,1-->id,齐-->UserName ONE(1, "齐"), TWO(2, "楚"), THREE(3, "燕"), FOUR(4...原创 2019-04-17 21:14:16 · 104 阅读 · 0 评论 -
ArrayList解决多线程不安全问题
package com.atguigu.thread.container;import java.util.ArrayList;import java.util.Collections;import java.util.List;import java.util.UUID;import java.util.concurrent.CopyOnWriteArrayList;/**...原创 2019-04-14 22:16:31 · 446 阅读 · 0 评论 -
读写锁
package com.atguigu.thread.writereadlock;import java.util.HashMap;import java.util.Map;import java.util.concurrent.TimeUnit;import java.util.concurrent.locks.ReentrantReadWriteLock;/** * 读写...原创 2019-04-16 22:32:22 · 72 阅读 · 0 评论 -
自旋锁:不阻塞,不断地尝试,直到获取锁
package com.atguigu.thread.spinlock;import java.util.concurrent.TimeUnit;import java.util.concurrent.atomic.AtomicReference;public class SpinlockDemo{ // 原子引用线程 AtomicReference<Thr...原创 2019-04-16 21:33:54 · 220 阅读 · 0 评论 -
可重入锁(递归锁)
可重入锁-->线程可以进入任何一个它已经拥有的 锁所同步 着的代码块.package com.atguigu.thread.reenterlock;import java.util.concurrent.TimeUnit;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.Reent...原创 2019-04-16 20:57:15 · 187 阅读 · 0 评论 -
死锁
package com.atguigu.thread.deadlock;public class DeadLockDemo{ public static void main(String[] args) { String lockA = "lockA"; String lockB = "lockB"; new Thread(n...原创 2019-04-21 12:15:41 · 142 阅读 · 0 评论 -
手写线程池
package com.atguigu.thread.pool;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.LinkedBlockingQueue;import java.util.concurrent.Thr...原创 2019-04-21 11:23:47 · 228 阅读 · 0 评论 -
volatile关键字可见性验证
package com.atguigu.thread.violate;import java.util.concurrent.TimeUnit;/** * Violate 验证 Violate的可见性 */public class VolatileThreadTest{ public static void main(String[] args) { ...原创 2019-04-13 12:35:16 · 530 阅读 · 3 评论 -
集合转换成String
@Test public void test1() { List<String> list = Arrays.asList("张三","李四","王五"); String str = String.join(",", list); System.out.println(str); } @Test ...原创 2019-03-26 19:50:50 · 338 阅读 · 0 评论 -
Callable线程
package com.atguigu.thread;import java.util.concurrent.Callable;import java.util.concurrent.FutureTask;public class CallableDemo{ public static void main(String[] args) throws Exc...原创 2019-04-20 11:39:13 · 137 阅读 · 0 评论