jcasado94
jcasado94

Reputation: 53

Look if an array has an specified object

I have an array composed of an X number of 2DPoints, and my goal is to do a boolean operation that could check if that array has the specified 2DPoint. Something like this:

Point2D.Double arrayPoints[] = new Point2D.Double[numberOfPoints];
Point2D.Double pointPVariable = new Point2D.Double(positionXVariable,positionYVariable);
arrayPoints[variableNumber] = pointPVariable;

if(arrayPoints has the Point2D(2.45,6.52)){
    do this
}

How can I do that boolean operation?? Thank you very much!

Upvotes: 0

Views: 281

Answers (2)

YMomb
YMomb

Reputation: 2397

If your array is sorted with the natural ordering of Point2D.Double, you can use the Arrays.binarySearch method.

if (Arrays.binarySearch(arraysPoints, new Point2D.Double(2.45,6.52)) >= 0) {
    do this
}

Upvotes: 1

Darcara
Darcara

Reputation: 1618

Arrays.asList(arrayPoints).contains(new Point2D.Double(2.45,6.52))

This works as long as the classes being compared override the equals method.

Upvotes: 2

Related Questions