开销与代码速度(java.io.File数组与java.lang.String数组)
只是试图理清我在这里的一个小分类.
目前,我正在开发一个涉及将文件列表收集到内存中的应用程序,以便删除.现在,在这一点上,我认为java.io.File数组可能会占用太多内存,因为此上下文中的Files列表可能包含数百个可能的条目. 我没有使用File对象列表吃掉过多的内存,而是认为收集文件名列表并将它们存储为java.lang.String对内存来说会更便宜.现在,这是我的问题:要记住这些文件要删除,哪些文件会更便宜: >存储一个File对象而不是String对象,并调用.delete();循环中的每一个(使用太多的内存). 我想尽可能快地使程序,所以任何一种方法都有其优点,我只想看看哪些方法的开销最小.提前致谢! 解决方法
java.io.File表示文件系统中条目的文件名信息/元数据,它不包含文件的内容.
换句话说,像新文件(“somelarge.txt”)这样的代码不会将somelarge.txt文件加载到内存中. 每个File对象包含的唯一真实数据是File的String路径(以及transient int prefixLength) – 认为File类只是知道如何调用所有文件系统操作的String路径的包装器. 除了其他一些要求之外,这里的最佳选择是最容易阅读的代码并最好地传达您的意图. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |