zoukankan      html  css  js  c++  java
  • guava Preconditions

    1.checkArgument

    2.checkState

    3.checkNotNull

    4.checkElementIndex

    5.checkPositionIndex

    该类就这五种重载方法。

    1. checkArgument   用作检查参数

    1.1 单纯的判断表达式
    public static void checkArgument(boolean expression) {
            if (!expression) {
                throw new IllegalArgumentException();
            }
    }
    
    1.2  规定表达式false 返回的错误信息
    public static void checkArgument(boolean expression, @Nullable Object errorMessage) {
            if (!expression) {
                throw new IllegalArgumentException(String.valueOf(errorMessage));
            }
    }
    1.3 表达式, 错误模板, 错误信息
    public static void checkArgument(boolean expression, @Nullable String errorMessageTemplate, @Nullable Object... errorMessageArgs) {
            if (!expression) {
                throw new IllegalArgumentException(Strings.lenientFormat(errorMessageTemplate, errorMessageArgs));
            }
    }

    2. checkState   用作检查状态

      public static void checkState(boolean expression) {
            if (!expression) {
                throw new IllegalStateException();
            }
        }
    
        public static void checkState(boolean expression, @Nullable Object errorMessage) {
            if (!expression) {
                throw new IllegalStateException(String.valueOf(errorMessage));
            }
        }
    
        public static void checkState(boolean expression, @Nullable String errorMessageTemplate, @Nullable Object... errorMessageArgs) {
            if (!expression) {
                throw new IllegalStateException(Strings.lenientFormat(errorMessageTemplate, errorMessageArgs));
            }
        }

    3.checkNotNull    检查参数是否不为空

    @CanIgnoreReturnValue
        public static <T> T checkNotNull(T reference) {
            if (reference == null) {
                throw new NullPointerException();
            } else {
                return reference;
            }
        }
    
        @CanIgnoreReturnValue
        public static <T> T checkNotNull(T reference, @Nullable Object errorMessage) {
            if (reference == null) {
                throw new NullPointerException(String.valueOf(errorMessage));
            } else {
                return reference;
            }
        }
    
        @CanIgnoreReturnValue
        public static <T> T checkNotNull(T reference, @Nullable String errorMessageTemplate, @Nullable Object... errorMessageArgs) {
            if (reference == null) {
                throw new NullPointerException(Strings.lenientFormat(errorMessageTemplate, errorMessageArgs));
            } else {
                return reference;
            }
        }
  • 相关阅读:
    关于dllimport的使用
    公众平台返回原始数据为: 错误代码-40164
    CentOS7.4 系统下 Tomcat 启动慢解决方法
    PyCharm实现高效远程调试代码
    代码比较工具推荐
    CentOS7 下源码安装 python3
    linux定时任务调度定系统——opencron
    使用 ISO镜像配置 本地yum 源(RHEL, CentOS, Fedora等适用)
    Error: rpmdb open failed
    部署Redis(脚本安装)
  • 原文地址:https://www.cnblogs.com/inspirationBoom/p/10333157.html
Copyright © 2011-2022 走看看