发布于2021-06-12 13:15 阅读(485) 评论(0) 点赞(9) 收藏(1)
public static List testNull(){
//return Collections.emptyList();
return Collections.EMPTY_LIST;
}
public void testEmptyList() {
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(2);
System.out.println(list);
list = Collections.emptyList();
System.out.println(list);
list.add(3);//异常:不支持的操作
}
public void testTimerTask() throws IOException {
TimerTask task = new TimerTask() {
@Override
public void run() {
System.out.println("执行成功");//先判断订单状态是否是未支付,如果是就回写库存操作
}
};
Timer timer = new Timer();
timer.schedule(task, 1000*5);//五秒后后执行
System.in.read();//避免程序退出,进行阻塞
}
#状态机实现--版本号
#数据库的version默认为0修改订单时传入0我在mapper中对0加1并且重新赋值给version
#当版本号为0的时候我才可以修改订单状态
UPDATE goods_order
SET order_status = 4,
version = 0+1
WHERE
orderid = 100,AND version = 0
Optional 类是一个可以为null的容器对象。如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象。
Optional 是个容器:它可以保存类型T的值,或者仅仅保存null。Optional提供很多有用的方法,这样我们就不用显式进行空值检测。
Optional 类的引入很好的解决空指针异常。
@Test
public void optionalTest() {
Integer value1 = null;
Integer value2 = new Integer(10);
// Optional.ofNullable - 允许传递为 null 参数
Optional<Integer> a = Optional.ofNullable(value1);
// Optional.of - 如果传递的参数是 null,抛出异常 NullPointerException
Optional<Integer> b = Optional.of(value2);
System.out.println("第一个参数值存在: " + a.isPresent());
System.out.println("第二个参数值存在: " + b.isPresent());
// Optional.orElse - 如果值存在,返回它,否则返回默认值
Integer v1 = a.orElse(new Integer(0));
//Optional.get - 获取值,值需要存在
Integer v2 = b.get();
System.out.println("Sum =" + (v1 + v2));
}
@Test
public void test() throws Exception {
String str = null;
List<String> list = Arrays.asList("abc", "123", "123", "123", "123", "deg", "123", "4561234");
// Optional.ofNullable - 允许传递为 null 参数
Optional<String> s = Optional.ofNullable(str);
// Optional.of - 如果传递的参数是 null,抛出异常 NullPointerException
Optional<List<String>> l = Optional.of(list);
// 如果有值 输出
s.ifPresent(System.out::println);
// Optional.orElse - 如果值存在,返回它,否则返回默认值
System.out.println("s.orElse(\"orElse\") = " + s.orElse("orElse"));
// Optional.orElseGet - 如果存在该值,返回值, 否则触发other,并返回other调用的结果。
System.out.println("s.orElseGet(() -> \"orElseGet\") = " + s.orElseGet(() -> "orElseGet"));
String nullName = "12313";
// 没有值 抛出自定义异常
System.out.println(Optional.ofNullable(nullName).
orElseThrow(IllegalArgumentException::new));
// 有值 执行操作
Optional<List> optionalList = Optional.ofNullable(list);
optionalList.ifPresent(bean -> System.out.println(bean));
//Optional.get - 获取值,值需要存在
optionalList.get();
}
原文链接:https://blog.csdn.net/weixin_43891448/article/details/106613644
作者:skdk
链接:http://www.javaheidong.com/blog/article/221946/e5c91b87e5ef874fb083/
来源:java黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 java黑洞网 All Rights Reserved 版权所有,并保留所有权利。京ICP备18063182号-2
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!