Метод remove () возврата типа TreeSet - PullRequest
0 голосов
/ 25 февраля 2012

Итак, я смотрел на метод remove () из класса TreeSet, и у метода есть тип возвращаемого значения boolean. Java-API говорит, что если элемент, который мы хотим удалить, находится в дереве и удаляется, то метод возвращает true. Что если элемент отсутствует в дереве или уже удален, вызовет ли этот метод исключение? Могу ли я изменить метод, чтобы он возвращал значение false, если элемент не был удален?

 remove

 public boolean remove(Object o)
 Removes the specified element from this set if it is present.(...)
 Returns true if this set contained the element (or equivalently, if this set changed as a            result of the call). (This set will not contain the element once the call returns.)

1 Ответ

3 голосов
/ 26 февраля 2012

Вы ответили на свой вопрос, прочитав документацию.

Что, если элемент отсутствует в дереве или уже удален, вызовет ли этот метод исключение?

И затем документация:

Возвращает true, если этот набор содержал элемент

Так что он вернет false, если набор несодержать элемент («не в дереве» и «уже удален» на самом деле один и тот же случай)

...