Java中使用Preconditions来检查传入参数介绍
Preconditions是Guava中的一个类库,用于检查传入参数,一个常见用法如下:
boolean findElement(List<String> elements, String desiredElement) { checkNotNull(elements); // ... }
用法简单明了,就是检查参数elements是不是null,如果是null则扔出NullPointerException。当然Preconditions类里还有其它方法,可能满足几乎所有的传入参数的检查。Preconditions的好处在于,它在call stack中更容易理解,并且每个方法还提供了格式化字符串的变体,形如:
checkArgument(i < j, "Expected i < j, but %s > %s", i, j);
和Java自带的assert关键字不同的是,Preconditions的方法在release版本中依然有效,这么做的原因,大概是因为Java已经很慢了,不在乎多做些检查吧-_-
相关推荐
-
java tapestry5 布局 参数的处理
复制代码 代码如下: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns:t="http://t
-
Java获取代码中方法参数名信息的方法
前言 大家都知道随着java8的使用,在相应的方法签名中增加了新的对象Parameter,用于表示特定的参数信息,通过它的getName可以获取相应的参数名.即像在代码中编写的,如命名为username,那么在前台进行传参时,即不需要再编写如@Parameter("username")类的注解,而直接就能进行按名映射. 如下的代码参考所示: public class T { private interface T2 { void method(String username, Stri
-
Java中用户向系统传递参数的三种基本方式实例分享
使用Main方法的参数传递方式例示代码如下: 复制代码 代码如下: public class MainArgs { public static void main(String[] args) { System.out.println(args.length); for(String str : args){ System.out.println(str); } }} 在运行 java程序后面跟的字符串(一个或多个 多个用空格隔开)jvm将会把这些一个或多个字符串赋给args数组.当
-
javascritp添加url参数将参数加入到url中
将对象参数加入到url中,如果原来url中有则覆盖 js代码 function addToUrl(obj){ var aprotocol = location.protocol; var ahost = location.host; var apath = location.pathname; var asearch = location.search; var ahash = location.hash; var result = ''; console.log(obj); var joinO
-
java显示当前运行时的参数(java运行参数)
显示当前运行java代码的运行时的各种参数. 不带显String操作. 复制代码 代码如下: package systeminfo; import java.util.Iterator;import java.util.Map.Entry;import java.util.Properties; public class sysinfo { public static void main(String[] args) { Properties p = System.getProperties(
-
Java如何实现URL带请求参数(get/post)及得到get和post请求url和参数列表的方法
具体代码如下所示: public static String sendGet(String url,String param) { String result = ""; try{ String urlName = url + "?"+param;// URL U = new URL(urlName); URLConnection connection = U.openConnection(); connection.connect(); BufferedReade
-
java解析出url请求的路径和参数键值对类(解析出url请求的路径,包括页面)
复制代码 代码如下: package RequestPackage; import java.util.HashMap; import java.util.Map; public class CRequest { /** * 解析出url请求的路径,包括页面 * @param strURL url地址 * @return url路径 */ public static String UrlPage(String strURL) { String strPage=null; String[] arr
-
java向多线程中传递参数的三种方法详细介绍
在传统的同步开发模式下,当我们调用一个函数时,通过这个函数的参数将数据传入,并通过这个函数的返回值来返回最终的计算结果.但在多线程的异步开发模式下,数据的传递和返回和同步开发模式有很大的区别.由于线程的运行和结束是不可预料的,因此,在传递和返回数据时就无法象函数一样通过函数参数和return语句来返回数据.本文就以上原因介绍了几种用于向线程传递数据的方法,在下一篇文章中将介绍从线程中返回数据的方法. 欲先取之,必先予之.一般在使用线程时都需要有一些初始化数据,然后线程利用这些数据进行加工处理,并
-
Java方法的可变参数类型实例分析
Java方法中的可变参数类型是一个非常重要的概念,有着非常广泛的应用.本文就以实例形式对此加以分析.具体如下: 一般来说,许多Java初学者在看到下面的这段代码的时候,都会问一个问题:dealArray方法里那三个小点点是什么啊? public class TestVarArgus { public static void dealArray(int... intArray){ } public static void main(String args[]){ } } 这就是本文所要讨论的问题:
-
java根据方法名称取得反射方法的参数类型示例
复制代码 代码如下: /** * 根据方法名称取得反射方法的参数类型(没有考虑同名重载方法使用时注意) * @param obj 类实例 * @param methodName 方法名 * @return * @throws ClassNotFoundException */public static Class[] getMethodParamTypes(Object classInstance, String methodName) throws ClassNotF
随机推荐
- 浅析Ajax语法
- Java设计模块系列之书店管理系统单机版(一)
- 腾讯云(ubuntu)下安装 nodejs + 实现 Nginx 反向代理服务器
- js表头排序实现方法
- 通过脚本清空标签p中的class名和style 原创
- JavaScript数据结构与算法之链表
- Python实现列表转换成字典数据结构的方法
- 在SQL中获取一个长字符串中某个字符串出现次数的实现方法
- Python使用Redis实现作业调度系统(超简单)
- jQuery实现ctrl+enter(回车)提交表单
- jquery 常用操作整理 基础入门篇
- JavaScript设置、获取、清除单值和多值cookie的方法
- java常见事件响应方法实例汇总
- JavaScript Base64 作为文件上传的实例代码解析
- Javascript 中的 call 和 apply使用介绍
- Java pdu短信解码全面解析
- Linux中du-查看文件夹大小并按大小进行排序详解
- JAVA用户自定义事件监听实例代码
- Java实例化类详解
- AMX使用图解之经典插件