Эквивалентная функция к C “_getch ()” в Java?

Это не быстрее для использования явных имен полей по сравнению с *, если и только если, необходимо получить данные для всех полей.

Ваше клиентское программное обеспечение не должно зависеть от порядка возвращенных полей, таким образом, это - ерунда также.

И это возможно (хотя вряд ли), что необходимо получить все полевое использование *, потому что Вы еще не знаете, какие поля существуют (думайте структура очень базы динамических данных).

Другой недостаток использования явных имен полей - то, что, если существуют многие из них и они длинны тогда, оно делает чтение кода и/или журнала запросов более трудным.

, Таким образом, правило должно быть: при необходимости во всех полях используйте *, если Вы нуждаетесь в только подмножестве, называете их явно.

5
задан approxiblue 30 November 2016 в 23:18
поделиться

3 ответа

В java нет эквивалента getch. Вы также можете создать компонент графического интерфейса и привязать прослушиватель keyEvent.

1
ответ дан 14 December 2019 в 19:16
поделиться

Сначала я думал о System.in.read (), но вам нужно вводить данные, не нажимая Enter. Для этого требуется собственное взаимодействие с консолью (а консоль в каждой системе разная).

Итак, ответ - «нет,

0
ответ дан 14 December 2019 в 19:16
поделиться

Вы можете использовать метод ConsoleReader.readVirtualKey () библиотеки JLine. См. http://jline.sourceforge.net/apidocs/jline/ConsoleReader.html#readVirtualKey () .

Если вы не хотите использовать стороннюю библиотеку и если вы используете Mac OS X или UNIX, вы можете просто воспользоваться тем же трюком, который использует JLine для чтения отдельных символов: просто выполните команду «stty -icanon min 1» перед запуском вашей программы, и тогда System.in больше не будет буферизироваться по строке, и вы можете получить отдельный символ, используя System.in.read (). К сожалению, этот трюк не работает в Windows, поэтому вам придется использовать собственную библиотеку, чтобы помочь (или просто использовать JLine).

1
ответ дан 14 December 2019 в 19:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: