Java工具类NumberUtils使用
int数据类型和long数据类型
int占32位,long占64位,long表示的数据更大;
public static int toInt(String str)
NumberUtils.toInt(null) = 0
NumberUtils.toInt("") = 0
NumberUtils.toInt("1") = 1
说明:将一个字符串转换成int类型,如果转换失败返回0;
public static int toInt(String str, int defaultValue)
NumberUtils.toInt(null, 1) = 1
NumberUtils.toInt("", 1) = 1
NumberUtils.toInt("1", 0) = 1
说明:将一个字符串转换成int类型,如果转换失败就返回一个默认值0;
参数:str-将要转换的字符串,可能会是null;
defaultValue-默认值,如果转换失败就显示默认值
public static long toLong(String str)
NumberUtils.toLong(null) = 0L
NumberUtils.toLong("") = 0L
NumberUtils.toLong("1") = 1L
说明:将一个字符串数据转换成一个long类型数据,如果转换失败返回0;
参数:转换的字符串,可能为null;
返回值:字符串代表的long数据类型,或者转换失败的默认值0;
public static long toLong(String str, long defaultValue)
NumberUtils.toLong(null, 1L) = 1L
NumberUtils.toLong("", 1L) = 1L
NumberUtils.toLong("1", 0L) = 1L
说明:将一个字符串数据转换成一个long类型数据,如果转换失败返回默认值;
参数:str-转换的字符串,可能为null;defaultValue-默认值
返回值:字符串代表的long数据类型,转换失败的时候返回默认值;
double(双精度浮点数)和float(单精度浮点数)
在内存中占的字节数不同,单精度浮点数占4个字节,双精度浮点数占8个字节;
有效位数不同,单精度浮点数有效位数是8位,双精度浮点数有效位数是16位;
位数不同,单精度浮点的表示范围:-3.40E+38 ~ +3.40E+38,双精度浮点的表示范围:-1.79E+308 ~ +1.79E+308
处理速度不同,一般来说处理器处理单精度浮点数的速度比处理双精度的浮点数速度要快;
public static double toDouble(String str)
NumberUtils.toDouble(null) = 0.0d
NumberUtils.toDouble("") = 0.0d
NumberUtils.toDouble("1.5") = 1.5d这里写代码片
说明:将一个字符串转换成double类型,如果转换失败返回0.0d;如果字符串是null返回0.0d;
参数:str-转换的字符串,可能为null;
返回值:字符串代表的double值,如果转型失败返回0.0d;
public static double toDouble(String str, double defaultValue)
NumberUtils.toDouble(null, 1.1d) = 1.1d
NumberUtils.toDouble("", 1.1d) = 1.1d
NumberUtils.toDouble("1.5", 0.0d) = 1.5d
说明:将一个字符串转换成double类型,如果转换失败返回0.0d;如果字符串值是null将会把默认值返回;
参数:str-转换的字符串,可能为null;defaultValue-默认值;
返回值:字符串代表的double数据类型,或者转换失败时候的默认值;
public static float toFloat(String str)
NumberUtils.toFloat(null) = 0.0f
NumberUtils.toFloat("") = 0.0f
NumberUtils.toFloat("1.5") = 1.5f这里写代码片
说明:将一个字符串转换成float数据类型,如果转型失败返回0.0f;如果传入参数字符串为null,返回默认值0;
参数:str-转换的字符串,可能为null;
返回值:字符串代表的float数据类型,如果转型失败返回0;
public static float toFloat(String str, float defaultValue)
NumberUtils.toFloat(null, 1.1f) = 1.0f
NumberUtils.toFloat("", 1.1f) = 1.1f
NumberUtils.toFloat("1.5", 0.0f) = 1.5f
说明:将一个字符串转换成float数据类型,如果转型失败返回默认值;如果传入参数字符串为null,返回默认值;
参数:str-转换的字符串,可能为null;defaultValue-默认值
返回值:字符串代表的float数据类型,或者返回默认值;
public static boolean isDigits(String str)
NumberUtils.isDigits("asd");
NumberUtils.isDigits("1");
说明:检查字符串是否是只包含数字字符,Null和空将会返回false;
参数:str-检查的字符串;
返回参数:true
public static boolean isParsable(String str)
NumberUtils.isParsable("122")
说明:检验提供的字符串是否可以转换为number,可解析的number包括下面的方法 Integer.parseInt(String), Long.parseLong(String), Float.parseFloat(String) or Double.parseDouble(String),这个方法可以替代ParseException异常当调用上面的方法时;
十六进制和科学符号被认为是不可解析的;
null和空字符串返回false;
参数:str-检验的字符串;
返回数据:true-如果参数是可转换的字符串;
public static boolean isCreatable(String str)
说明:检查字符串是否是一个有效的number,有效数字包括进制标有0x或0X预选项,八进制数、科学记数法和标有类型限定符的数字,以前导零开头的非十六进制字符串被视为八进制值,因此字符串09将返回false,因为9不是有效的八进制,然而从0开始的数字,被视为十进制,null、空或者空串将返回false;
参数:str-检查的字符串;
返回值:true-如果字符串是一个正确格式化的数字;
public static int compare(int x, int y)
说明:比较两个int数值,这是相同的功能(在java7提供);
参数:x-第一个int比较值,y-第二个int比较值;
返回值:如果x==y返回0,如果x小于y返回负数,如果x大于y返回正数;
public static int compare(long x, long y)
说明:比较两个long数值,这是相同的功能(在java7提供);
参数:x-第一个long比较值,y-第二个long比较值;
返回值:如果x==y返回0,如果x小于y返回负数,如果x大于y返回正数;
public static BigDecimal createBigDecimal(String str)
说明:将一个字符串转换成BigDecimal类型,如果字符串是null将会返回null;
参数:str-转换的字符串,可能为null;
返回值:被转换的BigDecimal(如果输入的字符串是null将会返回null)
public static Double createDouble(String str)
说明:将一个字符串转换成Double类型,如果输入字符串是null将会返回null;
参数:str-转换字符串,可能为null;
返回值:被转换的Double值(如果输入字符串是null将会返回null);
抛出异常:如果值不能解析将会抛出NumberFormatException ;
public static Long createLong(String str)
说明:将一个字符串转换为Long数据类型,自3.1以来,它处理六(0xhhhh)和八进制(0ddd)符号,注:前导零表示八进制;空间不剪裁。如果字符串值是null将会返回null;
参数:str-转换的字符串,可能为null;
返回值: 被转换的Long数据(如果输入的是null将返回null);
抛出异常:如果值不能被转换将会抛出NumberFormatException异常;
public static BigInteger createBigInteger(String str)
说明:将一个字符串转换为BigDecimal类型,自3.2以来,它处理六(0x或#)和八进制(0)符号。如果字符串为null将会返回null;
参数:str-转换的字符串(可能为null);
返回参数:被转换的BigDecimal(如果输入字符串为null将返回null);
抛出异常:如果值不能被转换将会抛出NumberFormatException异常;
public static Number createNumber(String str)
说明:将一个字符串值转换为java.lang.Number类型;
参数:str-转换字符串(可能为null);
返回值:从字符串创建的Number值(如果输入的字符串为null则返回null);
抛出异常:如果值不能被转换将会抛出NumberFormatException异常;
public static int max(int a, int b, int c)
说明:获取三个int值中最大的一个;
参数:a-值1,b-值2,c-值3
返回值:最大的值;
public static int max(int… array)
说明:返回数组中最大的值;
参数:array-一定不能为空或者null;
返回值:数组中最大的值;
抛出异常:如果数组为空或者null将会抛出IllegalArgumentException异常;
Java工具类NumberUtils使用的更多相关文章
- java工具类系列 (四.SerializationUtils)
java工具类系列 (四.SerializationUtils) SerializationUtils该类为序列化工具类,也是lang包下的工具,主要用于序列化操作 import java.io.Se ...
- Java工具类——通过配置XML验证Map
Java工具类--通过配置XML验证Map 背景 在JavaWeb项目中,接收前端过来的参数时通常是使用我们的实体类进行接收的.但是呢,我们不能去决定已经搭建好的框架是怎么样的,在我接触的框架中有一种 ...
- 排名前 16 的 Java 工具类
在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码. 一. ...
- 排名前16的Java工具类
原文:https://www.jianshu.com/p/9e937d178203 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法 ...
- 第一章 Java工具类目录
在这一系列博客中,主要是记录在实际开发中会常用的一些Java工具类,方便后续开发中使用. 以下的目录会随着后边具体工具类的添加而改变. 浮点数精确计算 第二章 Java浮点数精确计算 crc32将任意 ...
- java工具类之按对象中某属性排序
import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang ...
- 干货:排名前16的Java工具类
在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码. 一. ...
- Java工具类:给程序增加版权信息
我们九天鸟的p2p网贷系统,基本算是开发完成了. 现在,想给后端的Java代码,增加版权信息. 手动去copy-paste,太没有技术含量. 于是,写了个Java工具类,给Java源文件 ...
- 常用高效 Java 工具类总结
一.前言 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码 ...
随机推荐
- MySQL数据库中,使用 group by 时,不重复字段如何拼接显示
就不写文字描述了,直接用图和sql来表述吧. 这是测试数据,表名为 person 现在,我想按照性别进行分组,也就是字段 sex ,同时能将分组后的姓名全部显示出来. sql 语句如下: SELECT ...
- CSS3 RGBA等于RGB加上opacity吗?
在我们前端设计里有两篇教程: CSS3 RGBA colors使用说明 css3中opacity属性学习与实践,他们公别介绍了RGBA,RGB,opacity的用法,这里我们把这三个属性放在一起来考虑 ...
- Ubuntu下安装fcitx+搜狗输入法
转载自:http://www.linuxidc.com/Linux/2013-07/87062.htm 目标:在Ubuntu 13.04以及基于Ubuntu的发行版上安装fcitx小企鹅输入法,并安装 ...
- nutch二次开发环境搭建
开发环境: ubuntu14.04 + jdk1.7 + eclispe +nutch1.7 1:解压下好nutch1.7 src 源码(wget http://archive.apache.org/ ...
- Python做数据预处理
在拿到一份数据准备做挖掘建模之前,首先需要进行初步的数据探索性分析(你愿意花十分钟系统了解数据分析方法吗?),对数据探索性分析之后要先进行一系列的数据预处理步骤.因为拿到的原始数据存在不完整.不一致. ...
- 如何读懂Web服务的系统架构图
Web服务的一个重要特点就是流量大.数据多,仅靠一台服务器肯定难以支撑大规模的服务. 所以我们经常会看到诸如以下的一些术语,教人好生不懂: *:系统架构.物理架构.Web服务基础设施 *:应用服务器 ...
- python、Jupyter运行时间
1.Python time time()方法 import time time_start=time.time() time_end=time.time() print('totally cost', ...
- Android 开发 框架系列 OkHttp文件下载功能实现(含断点续传)
前言 此篇博客只是下载功能的记录demo,如果你还不太了解okhttp可以参考我的另一篇博客https://www.cnblogs.com/guanxinjing/p/9708575.html 代码部 ...
- CF773E Blog Post Rating
题意:有一篇博客.一共有n个人,心中有他们期望该博客得到的赞数a[i].当某个时刻该博客的获赞数<a[i],则该人会使得赞数+1,当赞数>a[i],该人会使得赞数-1,当赞数=a[i],不 ...
- 配置类一@CrossOrigin
@CrossOrigin是用来处理跨域请求的注解 跨域:指的是浏览器不能执行其他网站的脚本.它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制. 所谓同源是指,域名,协议,端口 ...