在编译时加载图像 Java

Load Images At Compile Time in Java

我制作了一个程序,它在 运行 时将大约 66 张图像加载到程序中。我使用 SwingWorker 加载图像,这样我就可以快速访问图像,而无需在单击按钮时加载它们。但是,加载时间有点长(2 分钟以上)。我想预加载图像,以便当用户 运行 执行程序时,图像已经加载。我在互联网上搜索过它,但没有找到解决方法。有没有办法做到这一点?任何帮助将不胜感激。 谢谢。

将它们放在类路径中并在运行时将它们作为资源加载。您将需要知道所有 66 个名字。

请参阅 https://docs.oracle.com/javase/8/docs/technotes/guides/lang/resources.html 上的官方 Oracle 教程以了解更多信息。

您只能在运行时加载它们,因此如果它们需要 2 分钟才能加载,那么它们将始终需要 2 分钟才能加载。

这只是两分钟从什么时候开始的问题(当按下按钮时,或者从更早开始加载它们的时间点开始)。

如果加载图像需要这么长时间,可能值得考虑为什么要花这么长时间。例如:

  • 您可以通过加载较小的图像来减少加载时间,至少在一开始是这样。
  • 如果您是从远程源下载图像,请将它们存储在本地(不过我想这几乎是显而易见的)。