因此,我目前正在制作2D游戏,其中地图是在.txt文件中预先生成的,然后读取并加载到数组中。更高效的将int从.txt传输到数组的方式
该数组存储在World类(我正在使用greenfoot),而我正在这样做的方法是:(地图被声明并初始化为之前的世界大小,并且地图是一个完美的矩形)
Scanner scan = new Scanner (new File("map.txt"));
for(int i = 0; i<map.length;i++)
{
for(int j = 0;j<map[0].length; j++;)
{
map[i][j]=scan.NextInt();
}
}
(异常被捕获和扫描仪后关闭) 我的地图是目前600x5000,并传送数据的方法似乎很慢。有什么方法可以加快速度或使用更高效的方式来完成此操作?
在此先感谢!
您可以尝试使每2个字节(=每2个字符)表示一个地图块。因此,您可以节省一些运行时间来检索地图 –
在竞争编码领域,建议使用['BufferedReader'](http://docs.oracle.com/javase/8/docs/api/java /io/BufferedReader.html)而不是'Scanner'来读取数据,因为速度更快。这对你的情况也是有利的。 – apnorton
或甚至每个字节都是一个块,如果你不需要超过256个对象在游戏中 –