「java超长数字」java超长字符串

博主:adminadmin 2022-11-28 11:07:07 56

今天给各位分享java超长数字的知识,其中也会对java超长字符串进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java如何存储巨大的数字比如100!

存储100的阶乘,这种超大数字,java 还是提供了一些类的比如

1: 使用BigInteger或者 BigDecimal...

import java.math.BigDecimal;

import java.math.BigInteger;

// 测试类  

public class Demo {

public static void main(String[] args) {

BigDecimal s1 = jieCheng(100);//BigDecimal存100的阶乘还是没有问题的

BigInteger bi=s1.toBigInteger();//BigInteger存100的阶乘也可以

System.out.println(bi);

System.out.println(s1);

}

public static BigDecimal jieCheng(int num) {

BigDecimal sum = new BigDecimal("1");

if (num  0) {

throw new IllegalArgumentException("参数不能为负!");

}

for (int i = 1; i = num; i++) {

sum =sum.multiply(new BigDecimal(i));//循环进行累乘

}

return sum;// 返回结果字符串

}

}

如果是BigDecimal都处理不了超大数字,  那么可以使用String来存储

String str ="123...";//这种方式,是明文写入代码的,字符串长度不能太长.

所以太长的文本应该写入字符串文本中. 使用的时候使用IO进行读取

java扩展一个超长的数字类。

用BigDecimal 或者是BigInteger

给你个BigDecimal的例子

import java.math.BigDecimal;

import java.math.BigInteger;

public class $ {

    public static void main(String[] args) {

        BigDecimal d0 = new BigDecimal("10000000000000000000000000000000000000000000000000000000");

        BigDecimal d1 = new BigDecimal(999);

        // 加

        d0 = d0.add(d1);

        System.out.println(d0.toString());

        // 减

        d0 = d0.subtract(d1);

        System.out.println(d0.toString());

        // 乘

        d0 = d0.multiply(d1);

        System.out.println(d0.toString());

        // 除

        d0 = d0.divide(d1);

        System.out.println(d0.toString());

    }

}

结果:

10000000000000000000000000000000000000000000000000000999

10000000000000000000000000000000000000000000000000000000

9990000000000000000000000000000000000000000000000000000000

10000000000000000000000000000000000000000000000000000000

java 超长数字怎么存进数据库

如果超过了int,那么你应该用long来定义这个数据,数据库中同样有BigInt的类型支持64位甚至更大的整数。

关于java超长数字和java超长字符串的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-11-28,除非注明,否则均为首码项目网原创文章,转载请注明出处。