我相信这是File
课,但我听说内存非常昂贵。
有没有更好的方法来处理文件路径?
答案 0 :(得分:6)
很难说不知道你想做什么,但请不要过早地优化。我怀疑在你的应用程序中,File对象的内存使用会非常明显。
答案 1 :(得分:2)
File类本身并不包含太多数据。它有两个实例字段。如果你担心的只是记忆,那看起来就不是什么问题了。在打开流或频道之前,不会从文件系统加载任何内容。
答案 2 :(得分:2)
File类可能很昂贵,您不想使用它来将硬盘上的每个文件存储在内存中。我知道我遇到了问题,特别是当我尝试使用File对象树时。如果您确实遇到使用文件类太昂贵的情况,请考虑使用字符串,并转换为需要的文件。但是让这个程序变得实用的优化可能表明你有更大的问题。与结构保持对象相关的开销更有可能成为一个问题。
答案 3 :(得分:1)
我唯一知道File使用大量内存的地方是你使用File.list()...
请参阅以下解决方案:
Is there a workaround for Java’s poor performance on walking huge directories?