Look if an array has an specified object

284 Views Asked by At

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!

2

There are 2 best solutions below

2
On BEST ANSWER
Arrays.asList(arrayPoints).contains(new Point2D.Double(2.45,6.52))

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

0
On

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
}