首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

String转为long 类型报错原因:要转为long必须int、double、float

大家好,又见面了,我你们的朋友全栈君。...NumberStyles.AllowDecimalPoint); 可以正常转换, 而 a=100.9 时 long b=long.parse(a,NumberStyles.AllowDecimalPoint); 转换失败,报超过Int64...的最大值或最小值, 原因解释: 问题一:long整形也就是Int64类型,parse的对象必须整形 问题二: 当a =100.0 时 long b=long.parse(a,NumberStyles.AllowDecimalPoint...实际上允许有小数点的出现,但作为long,还是不能parse非整数,此时的a100.00,可以丢去小数点作为整数的。...问题三: 此时的a变成100.1,同样使用了NumberStyles.AllowDecimalPoint,但这时候long所parse的不再一个整数,所以会提出异常,超过int64也就是long的范围

2.3K40

Groovy语法-Number和Boolean数据类型学习

也就是说我们创建 def temp=12.3默认的类型BigDecimal,而不是float类型。...但是我们可以通过在参数值添加f,或者d来告知def类型float或者double,示例如下: def s= 12.3 //创建的一个BigDecimal对象 def f = 12.2f// 创建的一个...当书写较长的数字时,眼睛很难弄清楚一些数字如何组合在一起的,例如数值大小超过几千万。甚至数值更大,全部数字混在一起。容易看不明白。...涉及BitInteger和其他整数型参数进行计算的结果将会是BitInteger类型。 byte、char、short、intBigInteger的混合计算结果将会是BigDecimal类型。...对应的表格如下: byte char short int long BigInteger float double BigDecimal byte int int int int long BigInteger

88310
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    数据类型(3)

    因此我们定义了 BigInteger/BigDecimal 类来保存这类数据,实际是以字符串形式在堆区存储。BigInteger 类主要用来操作比 long 类型更大的整型数字。...BigDecimal 类基于 BigInteger 类实现。由于基本浮点数类型(float/double) 会产生精度丢失问题,因此常使用 BigDecimal 类代替。涉及金额必须使用该类。...y.setScale(3, rules); // 设置精度和保留规则Copy to clipboardErrorCopied枚举Enum 类(JDK 1.5 新增)比 Class 类多了部分特殊约束的特殊类型...自定义枚举类实际继承 Enum 类的 final 类,在类中将自定义该类型的 public static final 属性,并引入了相关方法。...实际开发中,枚举类通常的形式有两个参数int code,Sring msg)的构造器,可以作为状态码进行返回。

    24340

    Groovy语法系列教程之数字(四)

    即使BigDecimal十进制数字的默认值,在以float或double作为参数类型的方法或闭包中也可以接受此类文字。 小数不能用二进制、八进制或十六进制表示。...强大的二进制运算 byte、char、short和int之间的二进制运算结果int long和byte、char、short、int的二进制运算结果long BigInteger和任何其他整数类型的二进制运算结果...BigInteger BigDecimal和byte、char、short、intBigInteger的二进制运算结果BigDecimal float,double和BigDecimal之间的二进制运算结果...double 两个BigDecimal之间的二进制运算结果BigDecimal 下表总结了这些规则: byte char short int long BigInteger float double...与Java中不同,在Java中,您必须使用显式方法对这些数字进行运算。

    1.3K31

    Haskell 自定义type与typeclass

    v type IntMap = Map Int algebraic data type Bool类型代数数据类型的一个典型代表,一个代数类型可以有多个值构造器 data Bool = False|...我们可以在很多地方加上类型约束,这里就是在class Num where 中的a上加上它必须Eq instance的约束。...它接收一个类型参数(像是Int)从而构造出一个具体的类型。...这有点像函数,也是接收一个值作为参数并回传另一个值。对于类型如何被套用到泛型上,我们看下正式的定义。 像是3,"abc"或者takeWhile的值都有自己的类型(函数也是值的一种)。...我们可以在ghci中通过:k来获取一个类型的kind: Prelude> :k Int Int :: * *代表这个类型具体类型。一个具体类型没有任何类型参数的,值只能属于具体类型

    7010

    java大数(BigInteger

    而且其操作数也必须BigInteger型。 如:two.add(2)就是一种错误的操作,因为2没有变为BigInteger型。...补充: (1)abs():返回某数字的绝对值.参数可以是float、double、long或int。如果byte或short类型,那么它们会被强制转换成int类型。...例如参数为9.01时,返回10.0。为-0.1时,返回-0.0。返回比参数大的整数,而且都是双精度类型的。如果参数整数,则该方法会返回这个参数的双精度型。 (3)floor()返回紧邻的最小整数。...作用与ceil()正好相反,返回的参数小的整数,而且都是双精度型。如果参数为整数,则返回这个参数的双精度型。...如果该参数"非数字"类型(NaN),或者小于零,则返回NaN。

    2.7K20

    类型_Haskell笔记3

    一.内置类型 几种常见的类型如下: Int:有界整数,32位机器上的界限[-2147483648, 2147483647] Integer:无界整数,内置的大数类型,效率不如IntFloat:单精度浮点数...: no parse 编译器不知道我们想要什么类型,可以手动声明类型给点提示: > read "12" :: Int 12 > read "12" :: Float 12.0 五.自定义类型 代数数据类型...Algebraic Data Type,指通过代数运算构造出来的数据结构,其中代数运算有两种: sum:逻辑或,例如Maybe类型的可能值之间逻辑或关系 product:逻辑与,例如元组分量之间逻辑与的关系...= I Int | D Double 通过逻辑或和逻辑与能造出来任意复杂的数据结构,都可以称为代数数据类型 从地位来看,代数数据类型之于函数式语言,就像代数之于数学,是非常基础的东西。...当然,要求参数必须Eq类成员,否则无法自动比较(如果不满足,就会抛个错出来) Show和Read也类似,用来完成字符串与值之间的互相转换: data Mytype = Mytype Int String

    91340

    11.3 Java 数值类使用

    大数值 对货币等大值数据进行计算时,int、long、float 和 double 等基本数据类型已经在精度方面不能满足需求了。...BigInteger 提供多种方法,下面列举几个常用的方法: int compareTo(BigInteger val):将当前对象与参数 val 进行比较,方法返回值 int,如果返回值 0,则相等...BigDecimal(double val):将 double 转换为BigDecimal对象,参数valdouble类型的二进制浮点值准确的十进制表示形式。...BigDecimal 提供多种方法,下面列举几个常用的方法: int compareTo(BigDecimal val):将当前对象与参数 val 进行比较,方法返回值int,如果返回值0,则相等;...IDEA 更推荐使用 public BigDecimal setScale(int newScale, RoundingMode roundingMode),而非第二个参数传入的 int 类型的入参。

    95210

    Spring Boot:自定义参数校验

    @Digits BigInteger, CharSequence, byte, short, int, long 检查带注释的值是否一个最多包含整数位数和小数位数的数字 @Email BigInteger...可选参数regexp和flags允许指定电子邮件必须匹配的其他正则表达式 @Min BigInteger, CharSequence, byte, short, int, long 检查带注释的值是否大于或等于指定的最小值...与@NotEmpty的区别在于,此约束只能应用于字符序列 @NotEmpty CharSequence,Collection,Map和数组 检查带注释的元素是否不为null或为空 @NotNull 任何类型...@NegativeOrZero BigDecimal,BigInteger,byte,short,int,long 检查元素是不是小于等于0。...@Null 任何类型 检查注释的值 null @Size CharSequence,Collection,Map和数组 检查带注释的元素的大小是否介于min和之间max(包括) https://docs.jboss.org

    96820

    【hibernate validator】(二)声明和验证Bean约束

    regexp和flags参数指定正则规则,必须匹配的其它表达式 CharSequence @Future 检查是否将来的日期...@Min(value=) 是否大于或等于该值 BigDecimal,BigInteger,byte,short,int,long和原始类型的相应的包装;...检查元素负数或0 BigDecimal,BigInteger,byte,short,int,long和原始类型的相应的包装; HV额外支持:的任何子类型CharSequence...零值被视为无效 BigDecimal,BigInteger,byte,short,int,long和原始类型的相应的包装; HV额外支持:的任何子类型CharSequence(评估字符序列表示的数值...,BigInteger,byte,short,int,long和原始类型的相应的包装; HV额外支持:的任何子类型CharSequence(评估字符序列表示的数值),Number和的任何子类型javax.money.MonetaryAmount

    24540

    Java笔记(2)

    ) round(float)Systemexit(int status)当status==0时正常停止,非零异常停止arraycopy(ArrayList a,index,arr,index,count...,改变其中一个的数据,另外一个也会改变(地址) 深克隆:基本数据类型拷贝过来,字符串复用,引用数据类型重新创建新的(可以重写克隆方法实现深克隆,或者用第三方包方法进行深克隆) object...BigInteger(int num,Random rnd);取随机大的整数[0~2^num-1] BigInteger(String val);字符串中必须为整数 BigInteger(String...val,int radix);获取指定进制的大整数(比如[22,2]==>其中22二进制数) ​ BigInteger b = BigInteger.valueOf(100); valueOf(long...SimpleDateFormat("yyyy年MM月dd日"); String str2 = sdf2.format(date1); System.out.println(str2)lambda表达式使用lambda的对象必须函数接口类型

    9710

    财务精度:BigInteger 与 BigDecimal

    的 ”+“ add(), "-"subtract,"*" multiply,"/" divideBigInteger  引用数据类型,不是基本数据类型不可以直接使用 "+.-.*./" 这些算术运算符的...multiply(BigInteger val)/ 除public BigInteger divide(BigInteger val)注意所传的参数 BigInteger 类型的才行的,以及加减乘除后...因为 无论 Float 类 还是 Dobule 类都存在精度问题。...如果必须执行舍入,以生成具有指定标度的结果,则应用指定的舍入模式。 参数:divisor - 此 BigDecimal 要除以的值。scale - 要返回的 BigDecimal 商的标度。...无论 : BigDecimal  还是 BigInteger 都是引用类型,不是基本数据类型,对于 ”加减乘除“ 运算符,都不可以直接运算,而是通过 对于的方法进行了。”

    79930

    Groovy 语法 类型知识详解-第一篇

    在公共API的方法参数或方法返回类型中,省略类型通常被认为一种不好的做法。...虽然在局部变量中使用def并不是一个真正的问题,因为变量的可见性仅限于方法本身,但在方法参数上设置def时,def将在方法签名中转换为Object,这使得用户很难知道哪种类型参数期望的类型。...int sum(int x, int y) { x+y } } 在第一种情况下,所有方法、属性、字段、内部类… 注释类的类型将被检查,而在第二种情况下,只有方法和它包含的潜在闭包或匿名内部类将被类型检查...,在类型检查模式下,如果满足以下条件,List或Map A可以赋值给类型T的变量: 赋值一个变量声明,A一个List,T有一个构造函数,其参数与List的元素类型匹配。...解析通过名称和参数工作。返回类型与方法选择无关。参数类型与以下规则中的参数类型匹配: 类型A的参数o可以用于类型T的参数,当且仅当: T 等于A。 或者T一个String,A一个GString。

    68710

    基础类型概述

    ,也不属于基本数据类型,默认值为  null 为了支持大数据的计算,还提供了BigInteger 和 BigDecimal 所以说常用到的,基础性的数据类型有: 8种基本数据类型byte    short...      int         long     float     double     char           boolean 8种基本数据类型对应的包装类Byte    Short    ...Integer     Long     Float     Double     Character    Boolean java.lang.String java.math.BigInteger  ...Number对"数值"这两个字的概念在Java中的抽象Byte、Short、Integer、Long、Double、Float、BigDecimal、BigInteger  类的超类 规定了作为数值的协议...  就是提供xxxValue方法以获得各种不同的数据类型的值在类型转换之间可能会损失精度 除了byte和short 上图方法列表中的其他的方法   必须提供的 共性特点 比较 11

    51730

    基础类型BigDecimal简介

    val) 将 BigInteger 转换为 BigDecimal BigDecimal(BigInteger unscaledVal,int scale) 将 BigInteger 非标度值和 int...n) 求n次幂 准确计算该幂,使其具有无限精度 参数 n 必须在 0 到 999999999(包括)之间 ZERO.pow(0) 返回...版本也是会借助于缓存的所以优先于构造方法 valueOf(double val)使用 Double.toString(double) 方法转换 double 为字符串并且 调用构造方法此方法并没有涉及到缓存回头看下上面说的String参数类型的构造方法...String参数类型的构造方法---与 Float.toString(float) 和 Double.toString(double) 返回的值兼容这个valueOf借助的就是toString方法这个版本...一个转换器,将参数的BigDecimal转换为指定标度的值 值本身不会变化,变化的形式 返回的一个新的BigDecimal,不过这个新的BigDecimal并不一定是新创建的 可能使用缓存

    2.3K41
    领券