Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/334.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 - Fatal编程技术网

比较内存匹配游戏(Java)的图像时出现问题

比较内存匹配游戏(Java)的图像时出现问题,java,Java,我正在寻找一些关于如何实现这个目标的基本建议。我创建了一个图像数组列表(每个图像有两个),但我很难确定如何确定两个图像是否匹配。所以,如果你们能告诉我我遗漏了什么信息,或者告诉我如何在一个数组列表中比较两个图像的基本步骤,那就太好了 谢谢 如果您的图像周围有一个自定义类,您可以通过多种不同的方式确定它们是否匹配 因此,与其这样: ArrayList<BufferedImage> imageList; 然后,当他们拿出两张卡时,只需检查isMatching,看看它们是否匹配 值得一

我正在寻找一些关于如何实现这个目标的基本建议。我创建了一个图像数组列表(每个图像有两个),但我很难确定如何确定两个图像是否匹配。所以,如果你们能告诉我我遗漏了什么信息,或者告诉我如何在一个数组列表中比较两个图像的基本步骤,那就太好了


谢谢

如果您的图像周围有一个自定义类,您可以通过多种不同的方式确定它们是否匹配

因此,与其这样:

ArrayList<BufferedImage> imageList;
然后,当他们拿出两张卡时,只需检查
isMatching
,看看它们是否匹配


值得一提的是,Java中的每个
对象
都有用于类似目的的
equals
方法。(查看“this”对象是否为“that”对象)。另一种方法可能是在类上重写此方法。但是,这可能会影响ArrayList和其他集合中的某些功能,特别是如果不重写
hashcode
,则基于哈希的实现


如果确实要覆盖
等于
,请确保知道这可能会影响代码中的其他部分。(在谷歌上搜索更多关于“Java equals”的信息会得到比我在这里能找到的更好的信息)

非常感谢!这正是我需要的。
ArrayList<MemoryCard> cardList;
BufferedImage image;
//some way to identify this card. 
//Most would use an enum, but you could assign unique ints, Strings, or some other 
//    Object as well if you wanted.

public boolean isMatching(MemoryCard otherCard)
{
    //if (identifierField == otherCard.identifierField)
    //    return true;
    return false;
}