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万个开源项目源码 ...
随机推荐
- NX二次开发-通过点击按钮来控制显示工具条
NX9+VS2012 1.打开D:\Program Files\Siemens\NX 9.0\UGII\menus\ug_main.men 找到装配和PMI,在中间加上一段 TOGGLE_BUTTON ...
- NX二次开发-NXOpen方式遍历所有体workPart->Bodies();
NX11+VS2013 #include <NXOpen/DisplayManager.hxx> #include <NXOpen/Body.hxx> #include < ...
- 牛客多校第七场 C Governing sand 线段树
题意: 有一个树林,树林中不同种类的树有不同的数量,高度,砍伐它们的价格.现在要求砍掉一些树,使得高度最高的树占剩下的树的总数的一半以上,求最小花费. 题解: 用线段树维护不同种类树的信息,叶子节点从 ...
- IDea 工具debug模式详细使用说明
IDea 工具debug模式详细使用说明 IDEA中如何使用debug调试项目 一步一步详细教程 Debug用来追踪代码的运行流程,通常在程序运行过程中出现异常,启用Debug模式可以分析定位异常发生 ...
- LeetCode刷题笔记-回溯法-括号生成
题目描述: 给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合. 例如,给出 n = 3,生成结果为: [ "((()))", "( ...
- jq 出现 $.cookie is not a function
出现这种问题有3中可能 1是没有导入cookie相关的库文件 2是cookie的库文件和jquery库文件的先后顺序问题, 必须先导入jquery库文件后到其他库文件 3一个页面由于二次或多次引入了j ...
- POJ 2763 /// 基于边权的树链剖分
题目大意: 给定n个结点,有n-1条无向边,给定每条边的边权 两种操作,第一种:求任意两点之间路径的权值和,第二种:修改树上一点的权值. 因为是一棵树,可以直接把 u点和v点间(假设u为父节点,v为子 ...
- mysql主从复制原理分析
1.主从复制这类NFS存储数据通过inotify+rsync同步到备份的NFS服务器,只不 过Mysql的复制方案是其自带的工具inotify 是一种文件系统的变化通知机制,如文件增加.删除等事件可以 ...
- java笔试之从单向链表中删除指定值的节点
输入一个单向链表和一个节点的值,从单向链表中删除等于该值的节点,删除后如果链表中无节点则返回空指针. 链表的值不能重复 构造过程,例如 1 -> 2 3 -> 2 5 -> 1 4 ...
- BBS论坛 自定义form组件
二.自定义form组件 from django import forms from django.forms import widgets from app01 import models # 定制f ...