Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中将图像加载到数组中_Java_Image_Awt - Fatal编程技术网

在Java中将图像加载到数组中

在Java中将图像加载到数组中,java,image,awt,Java,Image,Awt,我正在尝试将一些图像加载到applet的数组中,我知道必须有更好的方法来实现这一点 public class Images extends Applet { Image card[]=new Image[45]; public void init() { img[0]= getImage( getDocumentBase(),"pics/1.gif"); img[1]= getImage( getDocumentBase(),"pics/2

我正在尝试将一些图像加载到applet的数组中,我知道必须有更好的方法来实现这一点

public class Images extends Applet
{
    Image card[]=new Image[45];
    public void init()
    {
        img[0]= getImage( getDocumentBase(),"pics/1.gif");
        img[1]= getImage( getDocumentBase(),"pics/2.gif");
.....

即使文件名不能根据数字来预测,您仍然可以拥有它们的集合。例如:

// Common prefix removed for brevity
private static final String[] IMAGE_FILES = {
    "img1.gif", "happy.gif", "sad.gif" /* etc */
};
然后:

Image[]images=新图像[Image_FILES.length];
对于(int i=0;i
(在Java 8中,使用lambda将一个数组转换为另一个数组可能有更好的方法——我还没有检查过。)


我不清楚
Images
类是否是一个好主意-它听起来不像是您通常创建的实例。我还强烈建议使用私有字段。

即使文件名不能根据数字进行预测,您仍然可以拥有它们的集合。例如:

// Common prefix removed for brevity
private static final String[] IMAGE_FILES = {
    "img1.gif", "happy.gif", "sad.gif" /* etc */
};
然后:

Image[]images=新图像[Image_FILES.length];
对于(int i=0;i
(在Java 8中,使用lambda将一个数组转换为另一个数组可能有更好的方法——我还没有检查过。)


我不清楚
Images
类是否是一个好主意-它听起来不像是您通常创建的实例。我还强烈建议使用私有字段。

最好的办法是使用某种配置文件,列出要加载的图像,并根据配置的需要使用
for loop
加载每个图像。我应该指定图像名称不完全相同,以防出现这种情况,您想这样做吗提高绩效?尝试使用延迟加载策略。最好的做法可能是使用某种配置文件列出要加载的映像,并根据配置的需要使用
for loop
加载每个映像。我应该指定映像名称不尽相同,以防出现问题。您想提高性能吗?尝试使用延迟加载策略。