[英]got the .equals() on incompatible types problem, how do i make my ArrayList <Point> and point compatible and the answer into an boolean
我正在制作一個蛇游戲,不希望我的櫻桃在蛇體內產卵,但是當我想使用 equals 來確定它是否在里面時,它不能導致它們不兼容。 有什么方法可以使它們兼容還是我必須以另一種方式使它在此處輸入圖像描述
public boolean collisionCheck1 (Point cherry){
if (snakeParts.equals(cherry)){
return true;
}
else
return false;
}
這是檢查部分 snakeParts 是 arraylist 和櫻桃是重點
ArrayList
is a class from java.util package
, which is a child class of java.util.Collection
interface. 如果您未指定泛型類型,它用於保存任何類型的對象的列表(為了理解您可以假設為對象數組,但它們實際上並不相同)。
在您的情況下, snakeParts
是一個ArrayList<Point>
object ,其中包含一系列 Point 類型對象(不僅僅是一個 Point 對象)。
但是在這里, snakeParts.equals(cherry)
您試圖將ArrayList
類型 object 與Point
類型 object 進行比較。
我無法理解你實際上想要做什么,但如果你想比較你必須做這樣的事情。
snakeParts.get(i).equals(Point class object)
其中i
是ArrayList
的索引。
要檢查snakeParts ArrayList
是否包含cherry
object,您可以使用java.util.List
接口的contains(your object)
方法,如下所示
snakeParts.contains(cherry)
如果snakeParts ArrayList
包含cherry
點 object 則返回 true,否則返回 false。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.