powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Сравнение строк
8 сообщений из 8, страница 1 из 1
Сравнение строк
    #39551808
glamis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А как можно сравнить строковую константу и значение функции:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
...
return myRead() == "Hello"  // здесь надо проверить и вернуть true or false
...

public static String myRead {
   BufferedReader read = new BufferedReader(new InputStreamReader(System.in));
   return read.readLine()
} 
...
Рейтинг: 0 / 0
Сравнение строк
    #39551814
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Сравнение строк
    #39551817
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Java нет функций. Есть методы. Методы возвращают значения, а не являются ими.
Значение, которое, вернул метод лучше положить в локальную переменную. Удобнее и читать и дебажить.
...
Рейтинг: 0 / 0
Сравнение строк
    #39551822
glamis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

не хочется писать лишний код. Через переменную можно сделать через equal. А вот с методом как быть?
...
Рейтинг: 0 / 0
Сравнение строк
    #39551827
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
glamisBlazkowicz,

не хочется писать лишний код. Через переменную можно сделать через equal. А вот с методом как быть?
Аналогично
(разумеется не с методом, а с экземпляром объекта который возвращает метод)
...
Рейтинг: 0 / 0
Сравнение строк
    #39551832
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
glamisreturn myRead() == "Hello" // здесь надо проверить и вернуть true or false

return myRead().equalsIgnoreCase( "Hello" );
...
Рейтинг: 0 / 0
Сравнение строк
    #39551835
glamis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev,

Спасибо, помогло!
...
Рейтинг: 0 / 0
Сравнение строк
    #39551861
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
glamisне хочется писать лишний код.
Вам кажется что он лишний. Вот только метод это действие. А сравнивают значения. Когда вы начинаете сравнивать действия понимания тому кому предстоит ваш код читать это никак не добавляет.

И я уже упомянул выше отладку. Но вам, конечно же, наплевать. Вот вы записали в файл текст. Вызвали, а результат сравнения не тот который вы ожидаете. Как вы теперь своё барахло дебажить будете? Где брейкпоинт поставите? В какой переменной значение посмотрите? Или вызовите "read.readLine()" в отладке чтобы увидеть значение, что сделает дальнейшую отладку невозможной, потоиму что стрим читается единожды.

Соединять методы в единую цепь можно только в исключительных случаях - билдеры, DSL и т.п. когда нужно множество вызовов, а результаты будут типовыми и промежуточные значения не особо важны.
У начинющих же программистов цепочка вызовов методов у тех классов что они написали в 99% случаев сигнализирут о нарушении инкапсуляции. Ибо мне нифига не понятно почему нельзя было написать метод следующего вида:
Код: java
1.
 boolean isMyReadEqualsTo(String value)



Ну, а если заглянуть в тело метода, то вспоминается, например, такой класс.
https://docs.oracle.com/javase/7/docs/api/java/io/Console.html
https://docs.oracle.com/javase/tutorial/essential/io/cl.html
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Сравнение строк
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]