您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> Java >> 字符串转数值,泛型类型转换问题

字符串转数值,泛型类型转换问题

来源:网络整理     时间:2016/6/26 11:49:26     关键词:

关于网友提出的“ 字符串转数值,泛型类型转换问题”问题疑问,本网通过在网上对“ 字符串转数值,泛型类型转换问题”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 字符串转数值,泛型类型转换问题
描述:

hi 我写了一个方法,用于将数值型字符串转换成数值的,但是数值型有byte/short/int/long/float/double等,我不想写多个相同功能的方法,请问各位是否有办法可以将以下方法合并成一个,我们只要将类型以泛型传入即可。


public static int parseInt(String str, int defaultValue)
    {         try
        {          return Integer.valueOf(str);         }         catch (NumberFormatException ex)         {             return defaultValue;         }     }
public static short parseShort(String str, short defaultValue)     {         ...     } public static long parseLong(String str, long defaultValue)     {         ...     }
谢谢。
解决方案1:


/**  *   * @author  * @date 2014-4-27<>  * @param clazz  * @param numberStr
 * @param defaultValue  * @return  */ public static Number conv(Class clazz, String numberStr, Number defaultValue) { try { if(Integer.class.isAssignableFrom(clazz)) { return Integer.parseInt(numberStr); } else if(Long.class.isAssignableFrom(clazz)) { return Long.parseLong(numberStr); } else if(Short.class.isAssignableFrom(clazz)) { return Short.parseShort(numberStr); } else if(Double.class.isAssignableFrom(clazz)) { return Double.parseDouble(numberStr); } else if(Float.class.isAssignableFrom(clazz)) { return Float.parseFloat(numberStr);
}
} catch(Exception e) { return defaultValue; } return defaultValue;
}
解决方案2:

顶楼上 的。看看吧。


以上介绍了“ 字符串转数值,泛型类型转换问题”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2082435.html

相关图片

相关文章