什么是CAS
CAS:compareAndSet的缩写,比较和修改。这个设计到操作系统。
compareAndSet有两个参数一个是期望,另一个是修改的值,就是如果期望的值达到了,就修改。反之就不修改
AtomicInteger atomicInteger = new AtomicInteger(2020);
# 在初始化的时候就设置了初始值为2020,调用compareAndSet,原值和期望值相同,就修改为2022.
atomicInteger.compareAndSet(2020, 2022);
System.out.println(atomicInteger.get());
遇到一个坑
Integer的值不在-128到127之间,会重新创建对象,不能使用==来比较,包装类必须使用eques比较。