guava-Preconditions

1.checkNotNull(T reference, @Nullable Object errorMessage) :null则抛异常
此方法返回的是T本身
 @Test
   public void testCheckNotNull() {
   Preconditions.checkNotNull(null,"不能为空");// 抛出空指针异常并输出errorMessage
   System.out.println("还继续执行吗?");// 未执行.
}
  @Test
    public void testCheckNotNull() {
        List<String> list = Lists.newArrayList();
        String name ="lisi";
        Preconditions.checkNotNull(list, "不能为空").add(name);// 如果是null则抛出空指针异常并输出errorMessage
        System.out.println(list);//[lisi]
    }
 
2.checkArgument(boolean expression, @Nullable Object errorMessage): expression为false则抛出异常
@Test
   public void testCheckArgument() {
       Source source = new Source();
System.out.println(source.getList());//空集合 List:[]       
        Preconditions.checkArgument(CollectionUtils.isNotEmpty(source.getList()),"集合不能为空");// 抛出参数异常并输出    
        System.out.println("还继续执行吗?");// 未执行.
}

3.checkState(boolean expression, @Nullable Object errorMessage):

@Test
    public void testPrecondition() {
        int i = 10;
        Preconditions.checkState(i != 10, "状态异常");
    }
报错:
java.lang.IllegalStateException: 状态异常

    at com.google.common.base.Preconditions.checkState(Preconditions.java:174)
    at com.saic.ebiz.ssc.clearing.utils.FileUtilTest.testPrecondition(FileUtilTest.java:86)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)
    at org.testng.internal.Invoker.invokeMethod(Invoker.java:701)
    at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:893)
    at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1218)
    at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
    at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
    at org.testng.TestRunner.privateRun(TestRunner.java:758)
    at org.testng.TestRunner.run(TestRunner.java:613)
    at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
    at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329)
    at org.testng.SuiteRunner.privateRun(SuiteRunner.java:291)
    at org.testng.SuiteRunner.run(SuiteRunner.java:240)
    at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:53)
    at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:87)
    at org.testng.TestNG.runSuitesSequentially(TestNG.java:1170)
    at org.testng.TestNG.runSuitesLocally(TestNG.java:1095)
    at org.testng.TestNG.run(TestNG.java:1007)
    at org.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:72)
    at org.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:123)

 

 
 

转载于:https://www.cnblogs.com/jia-bei/p/8398798.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值