【发布时间】:2017-05-18 11:01:01
【问题描述】:
我正在导入一个大文本文件,1700 万位长,我正在使用以下代码:
BufferedReader reader = new BufferedReader(new FileReader("test2.txt"));
String line = reader.readLine();
System.out.println("Done");
BigInteger num = new BigInteger(line);
System.out.println("Done Again");
它几乎可以立即加载文件并打印出'Done',但将String 转换为BigInteger 需要很长时间(大约一个小时),我能做些什么来加快这个速度起来快速加载号码?
【问题讨论】:
-
嗯,没有太多空间可以使用您发布的代码。如果你解释你想用这个数字做什么,也许我们可以研究一个替代解决方案。
-
假设您共享的代码不足以找到问题。已将 post 上的
String推荐给BigInteger。 -
一个1700万位数的数字需要很长时间才能解析...
-
我需要做的就是从一个文本文件中加载一个巨大的数字,然后把它变成一个 BigInteger。我提供了这段代码,因为使用它我可以看到文件本身几乎是即时加载的,但是将其转换为 BigInteger 需要很多时间
-
@SamanthaClark 代码非常慢,因为它是一个庞大的数字。这能回答你的问题吗?
标签: java optimization biginteger