zoukankan      html  css  js  c++  java
  • 判断参数是否符合要求的一个类

    import java.util.Collection;
    
    public class Args {
    
        public static void check(final boolean expression, final String message) {
            if (!expression) {
                throw new IllegalArgumentException(message);
            }
        }
    
        public static void check(final boolean expression, final String message, final Object... args) {
            if (!expression) {
                throw new IllegalArgumentException(String.format(message, args));
            }
        }
    
        public static <T> T notNull(final T argument, final String name) {
            if (argument == null) {
                throw new IllegalArgumentException(name + " may not be null");
            }
            return argument;
        }
    
        public static <T extends CharSequence> T notEmpty(final T argument, final String name) {
            if (argument == null) {
                throw new IllegalArgumentException(name + " may not be null");
            }
            if (TextUtils.isEmpty(argument)) {
                throw new IllegalArgumentException(name + " may not be empty");
            }
            return argument;
        }
    
        public static <T extends CharSequence> T notBlank(final T argument, final String name) {
            if (argument == null) {
                throw new IllegalArgumentException(name + " may not be null");
            }
            if (TextUtils.isBlank(argument)) {
                throw new IllegalArgumentException(name + " may not be blank");
            }
            return argument;
        }
    
        public static <E, T extends Collection<E>> T notEmpty(final T argument, final String name) {
            if (argument == null) {
                throw new IllegalArgumentException(name + " may not be null");
            }
            if (argument.isEmpty()) {
                throw new IllegalArgumentException(name + " may not be empty");
            }
            return argument;
        }
    
        public static int positive(final int n, final String name) {
            if (n <= 0) {
                throw new IllegalArgumentException(name + " may not be negative or zero");
            }
            return n;
        }
    
        public static long positive(final long n, final String name) {
            if (n <= 0) {
                throw new IllegalArgumentException(name + " may not be negative or zero");
            }
            return n;
        }
    
        public static int notNegative(final int n, final String name) {
            if (n < 0) {
                throw new IllegalArgumentException(name + " may not be negative");
            }
            return n;
        }
    
        public static long notNegative(final long n, final String name) {
            if (n < 0) {
                throw new IllegalArgumentException(name + " may not be negative");
            }
            return n;
        }
    
    }
  • 相关阅读:
    数组常用遍历方法总结
    文本控制行数,超出省略号显示
    数据结构入门
    数论函数补充 公式推导
    几何入门合集 gym101968 problem F. Mirror + gym102082 Problem F Fair Chocolate-Cutting + gym101915 problem B. Ali and Wi-Fi
    COCI 2018/2019 CONTEST #2 T4 Maja T5Sunčanje Solution
    数论函数
    数论入门
    USACO1.4 1.5 搜索剪枝与数字 洛谷OJ P1214 P1215 P1217 P1218
    USACO Section 1.3 题解 (洛谷OJ P1209 P1444 P3650 P2693)
  • 原文地址:https://www.cnblogs.com/softidea/p/3334379.html
Copyright © 2011-2022 走看看