Ответ 1
Вам нужно установить -ea
(Enable Assertions) в ваших настройках JVM.
Несвязанный, но вы почти всегда хотите string1.equals(string2)
, а не ==
.
Почему мой утвердительный оператор не дает никакого результата? Я думаю, что первый оператор assert должен завершиться неудачно, но я не вижу ничего отображаемого на Eclipse.
Я использую Eclipse для запуска этой программы.
package java.first;
public class test {
public static void main(String[] args) throws Exception {
String s = "test1";
assert (s == "test");
s = "test";
assert (s == "test");
}
}
Вам нужно установить -ea
(Enable Assertions) в ваших настройках JVM.
Несвязанный, но вы почти всегда хотите string1.equals(string2)
, а не ==
.
Вам нужно включить утверждения с аргументом -ea
(сокращение от -enableassertions
).
В Eclipse:
-ea
в поле "VM arguments".Теперь запуск должен вызвать AssertionError
.
По умолчанию Java отключает утверждения. Они должны быть разрешены для работы, с параметром -ea при запуске вашей программы.
Вам нужно включить проверку утверждения во время выполнения. Документация Oracle для Java:
Чтобы включить утверждения в разных деталях, используйте -enableassertions, или -ea, switch. Чтобы отключить утверждения в разных деталях, используйте параметры -disableassertions или -da, switch.
Подробная информация на веб-сайте Oracle по адресу http://docs.oracle.com/javase/1.4.2/docs/guide/lang/assert.html#enable-disable
Чтобы изменить параметры времени выполнения для программ, запускаемых внутри Eclipse, вам нужно будет изменить параметры, за которыми Eclipse запускает вашу программу. Как это сделать будет зависеть от вашей версии Eclipse, но вот как это работает в Eclipse Europa...
Ответ "заимствован" из http://www.coderanch.com/t/416987/vc/enable-Assertions-eclipse
Вы должны включить его, используя аргумент -ea.