Java中如何使用反射对负数进行排查
这篇文章主要介绍Java中如何使用反射对负数进行排查,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
十多年的马关网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网整合营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整马关建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联从事“马关网站设计”,“马关网站推广”以来,每个客户项目都认真落实执行。
1. 很久没有写反射了,好多方法忘记了下面一个对负数的检查列子,不是很好,凑活用吧
public class NumberUtil { /** * 返回对象属性,对象属性为double 不能为负数,为负数会提醒 *@Title:checkNumFilter *@Description:TODO * @Param:@param obj * @Param:@return *@return :boolean * @throws SecurityException * @throws NoSuchMethodException * @throws InvocationTargetException * @throws IllegalArgumentException * @throws IllegalAccessException *@throws *@author :kuchawyz2019年10月10日 */ public static boolean checkNumFilter(Object obj) throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException { // TODO Auto-generated method stub if(obj != null){ Class> clz = obj.getClass(); Field[] filds = clz.getDeclaredFields(); for(Field field :filds){ if(field.getGenericType().toString().equals("double")){ String methodName = "get"+upperCase(field.getName()); Method m = obj.getClass().getDeclaredMethod(methodName); double val = (double) m.invoke(obj); if(val < 0){ throw new ErrorFormateException("你传入的数字有负数的"); } } } return true; } return false; } /** * 对给定的字符串首字母变成大写 * (这里先将字符串转为字符数组, * 然后将数组的第一个元素,即字符串首字母,进行ASCII 码前移, * ASCII 中大写字母从65开始,小写字母从97开始,所以这里减去32) *@Title:upperCase *@Description:TODO * @Param:@param str * @Param:@return *@return :String *@throws *@author :kuchawyz2019年10月10日 */ public static String upperCase(String str) { char[] ch = str.toCharArray(); if (ch[0] >= 'a' && ch[0] <= 'z') { ch[0] = (char) (ch[0] - 32); } return new String(ch); } }
以上是“Java中如何使用反射对负数进行排查”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!
文章名称:Java中如何使用反射对负数进行排查
当前路径:http://scjbc.cn/article/pgiogg.html