While (i!= i) {} - возможно ли иметь задание, которое всегда верно Недавно у меня было интервью с компанией Software, в которой был задан следующий вопрос в техническом раунде: Объявите я таким образом, чтобы условие всегда было истинным: while(i != i) { } Возможно ли в java присвоить что-то подобное? Ответ 1 NaN не равен самому себе, поэтому double i = Double.NaN; Но я не думаю, что это хороший вопрос для интервью. Цитата из спецификации языка Java: NaN неупорядочен, поэтому: Операторы численного сравнения <, <=, > и >= возвращают false, если один или оба операнда NaN (§15.20.1). Оператор равенства == возвращает false, если либо операнд NaN. В частности, (x<y) == !(x>=y) будет false, если x или y составляет NaN. Оператор неравенства != возвращает true, если либо операнд NaN (§15.21.1). В частности, x!=x есть true тогда и только тогда, когда x NaN.
Ответ 1 NaN не равен самому себе, поэтому double i = Double.NaN; Но я не думаю, что это хороший вопрос для интервью. Цитата из спецификации языка Java: NaN неупорядочен, поэтому: Операторы численного сравнения <, <=, > и >= возвращают false, если один или оба операнда NaN (§15.20.1). Оператор равенства == возвращает false, если либо операнд NaN. В частности, (x<y) == !(x>=y) будет false, если x или y составляет NaN. Оператор неравенства != возвращает true, если либо операнд NaN (§15.21.1). В частности, x!=x есть true тогда и только тогда, когда x NaN.