Равенство в Clojure (функция =
) всегда проверяет значение, а не идентичность, поэтому две строки равны =
, если они имеют одинаковое содержимое.
Для большинства типов Java, включая String, Clojure =
отправляет в Java .equals
. String.equals определяется как «представляет одинаковую последовательность символов».
Если вы хотите проверить идентичность (находятся ли эти указатели в одном и том же месте в памяти?), Используйте функцию identical?
.