Is it possible to find the present index in an enhanced for loop?
No. If you need the index, I suggest you use an ordinary for-loop.
However, you don't actually seem to need the index in this situation. Unless you're dealing with some really strange type of list, you could go with an Iterator
and use the Iterator.remove()
method, like this:
public boolean cancelTicket(Flight f, Customer c) {
Iterator<BookingDetails> bdIter = c.getBooking().iterator();
if (!bdIter.hasNext())
return false;
while (bdIter.hasNext())
if (bdIter.next().getFlight() == f)
bdIter.remove();
return true;
}