Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.51/579: Рейтинг темы: голосов - 579, средняя оценка - 4.51
Pti44ka

Работа с текстом в Java, ввод с клавиатуры

02.09.2009, 15:18. Показов 108889. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно написать программу и часть кода должна выводить цифровую строку. Пользователь вводит с клавиатуры,а потом программа обрабатывает строку. Покажите,пожалуйста, хотябы пример кода для вывода строки с клавиатуры. Понимаю,что вопрос довольно простой,но я только начинаю изучать Java.
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.09.2009, 15:18
Ответы с готовыми решениями:

Работа с текстом/Java
Задача стоит следующая: все латинские буквы перед первым знаком "*" заменить на "."(точки), дальше все без изменений. Итак,...

Работа с текстом в java
Здравствуйте, Хотелось бы узнать библиотеку/команду для того что бы я мог например с какого то го определенного символа до какого то...

Работа с точкой: ввод с цифровой клавиатуры
При вводе в текст боксы числа запятой, он компилятор требует именно запятую. Но мне удобнее вводить числа с правой стороны клавы ( привычка...

17
 Аватар для 0xAX
2451 / 362 / 9
Регистрация: 27.06.2009
Сообщений: 880
02.09.2009, 15:39
Java
1
2
string a = System.In.read();
System.out.print(a);
0
31 / 31 / 4
Регистрация: 15.11.2008
Сообщений: 205
02.09.2009, 15:58
only#, невзлетит)
0
 Аватар для 0xAX
2451 / 362 / 9
Регистрация: 27.06.2009
Сообщений: 880
02.09.2009, 17:08
Цитата Сообщение от грязный Посмотреть сообщение
only#, невзлетит)
Что так?)) Поправтье меня, сам к java только присматриваюсь.
0
 Аватар для Mecid
683 / 232 / 16
Регистрация: 15.10.2007
Сообщений: 1,246
02.09.2009, 18:51
Java
1
2
3
Scanner scan = new Scanner(System.in);
String s = scan.nextLine();
System.out.println(s);
1
31 / 31 / 4
Регистрация: 15.11.2008
Сообщений: 205
03.09.2009, 07:01
only#, во-первых не "string" а "String", во-вторых не "In" а "in", и втретьих метод read() возвращает тип int
1
Эксперт С++
 Аватар для schdub
3073 / 1411 / 425
Регистрация: 19.01.2009
Сообщений: 3,894
03.09.2009, 11:22
Лучший ответ Сообщение было отмечено mik-a-el как решение

Решение

Ну если для новичка, то, наверное, вот так:

Java
1
2
3
4
5
6
7
8
9
import java.util.Scanner;
 
public class Example1 {
    public static void main(String args[]) {
        Scanner scan = new Scanner(System.in);
        String s = scan.nextLine();
        System.out.println(s);
    }
}
К тому же стоит отметить, что сохранить ентот код нужно в файл Example1.java

Компилить командой
Code
1
%JREPath%/javac Example1.java
Запускать командой
Code
1
%JREPath%/java Example1
4
1 / 1 / 1
Регистрация: 13.06.2009
Сообщений: 4
05.11.2009, 19:13
А так
Java
1
2
3
4
5
6
7
8
      import java.io.*;
          class s{
             public static void main(String args[]){
                  BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
            String h=br.Readline();
                   System.out.println(h);
         }
       }
1
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
06.11.2009, 19:03
Когда начинал учить java, то первое что сделал - написал свой класс
IOStream
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
class IOStream
{
    static boolean jar; 
    static private java.io.BufferedReader jin = 
        new java.io.BufferedReader(new java.io.InputStreamReader(System.in));
    static private String buf;
    static String ReadString()
    {
        try 
        {
            buf = jin.readLine();
        } 
        catch (java.io.IOException e) 
        {
            buf = "null";
        }
        return buf;
    }
    static double ReadDouble()
    {
        double buf;
        try 
        {
            buf = Double.parseDouble(jin.readLine());
        } 
        catch (java.io.IOException e) 
        {
            buf = 0.0;
        }
        catch(NumberFormatException e)
        {
            Print("Введены некорректные данные, повторите ввод!\n");
            buf = ReadDouble();
        }
        return buf;
    }
    static int ReadInt()
    {
        int buf;
        try 
        {
            buf = Integer.parseInt(jin.readLine());
        } 
        catch (java.io.IOException e) 
        {
            buf = 0;
        }
        catch(NumberFormatException e)
        {
            Print("Введены некорректные данные, повторите ввод!\n");
            buf = ReadInt();
        }
        return buf;
    }
    static short ReadShort()
    {
        short buf;
        try 
        {
            buf = Short.parseShort(jin.readLine());
        } 
        catch (java.io.IOException e) 
        {
            buf = 0;
        }
        catch(NumberFormatException e)
        {
            Print("Введены некорректные данные, повторите ввод!\n");
            buf = ReadShort();
        }
        return buf;
    }
    static byte ReadByte()
    {
        byte buf;
        try 
        {
            buf = Byte.parseByte((jin.readLine()));          
        } 
        catch (java.io.IOException e) 
        {
            buf = 0;
        }
        catch(NumberFormatException e)
        {
            Print("Введены некорректные данные, повторите ввод!\n");
            buf = ReadByte();
        }
        return buf;
    }
    static boolean ReadBool()
    {
        boolean buf1;
        try 
        {
            buf = jin.readLine();
            if(Boolean.parseBoolean(buf))
                return true;
            else
                if(buf.equalsIgnoreCase("false"))
                    return false;
                else
                    throw new Exception();
        } 
        catch (Exception e) 
        {
            Print("Введены некорректные данные, повторите ввод!\n");
            buf1 = ReadBool();
        }
        return buf1;
    }
    static void Print(String text)
    {
        if(jar)
            System.out.print(Repl(text));
        else
            System.out.print(text);
    }
    static void PrintLine(String text)
    {
        if(jar)
            System.out.println(Repl(text));
        else
            System.out.println(text);
    }
    static void PrintLine()
    {
        System.out.println();
    }
    static short ReadShort(short infinum, short supremum)
    {
        short buf;
        try 
        {
            buf = Short.parseShort(jin.readLine());
            if(buf < infinum || buf > supremum)
                throw new NumberFormatException();
        } 
        catch (java.io.IOException e) 
        {
            buf = 0;
        }
        catch(NumberFormatException e)
        {
            Print("Введены некорректные данные, повторите ввод!\n");
            buf = ReadShort(infinum, supremum);
        }
        return buf;
    }
    static byte ReadByte(byte infinum, byte supremum)
    {
        byte buf;
        try 
        {
            buf = Byte.parseByte((jin.readLine())); 
            if(buf < infinum || buf > supremum)
                throw new NumberFormatException();
        } 
        catch (java.io.IOException e) 
        {
            buf = 0;
        }
        catch(NumberFormatException e)
        {
            Print("Введены некорректные данные, повторите ввод!\n");
            buf = ReadByte(infinum, supremum);
        }
        return buf;
    }
    static int ReadInt(int infinum, int supremum)
    {
        int buf;
        try 
        {
            buf = Integer.parseInt(jin.readLine());
            if(buf < infinum || buf > supremum)
                throw new NumberFormatException();
        } 
        catch (java.io.IOException e) 
        {
            buf = 0;
        }
        catch(NumberFormatException e)
        {
            Print("Введены некорректные данные, повторите ввод!\n");
            buf = ReadInt(infinum, supremum);
        }
        return buf;
    }
    static String Replace(String text)
    {
        String []LRus = {"а", "б", "в", "г", "д", "е", "ё", "ж", "з", "и", "й",
                        "к", "л", "м", "н", "о", "п", "р", "с", "т", "у", "ф",
                        "х", "ц", "ч", "ш", "щ", "ь", "ы", "ъ", "э", "ю", "я" };
        
        String []URus = {"А", "Б", "В", "Г", "Д", "Е", "Ё", "Ж", "З", "И", "Й",
                         "К", "Л", "М", "Н", "О", "П", "Р", "С", "Т", "У", "Ф",
                         "Х", "Ц", "Ч", "Ш", "Щ", "Ь", "Ы", "Ъ", "Э", "Ю", "Я" };
        
        String []LEng = {"a", "b", "v", "g", "d", "e", "jo", "zh", "z", "i", "j",
                         "k", "l", "m", "n", "o", "p", "r", "s", "t", "u", "f",
                         "kh", "ts", "ch", "sh", "sch", "'", "y", "'", "e", "ju", "ja" }; 
        
        String []UEng = {"A", "B", "V", "G", "D", "E", "Jo", "Zh", "Z", "I", "J",
                         "K", "L", "M", "N", "O", "P", "R", "S", "T", "U", "F", 
                         "Kh", "Ts", "Ch", "Sh", "Sch", "'", "Y", "'", "E", "Ju", "Ja" };
        byte index;
        for(index = 0; index < 33; ++index)
        {
            text = text.replace(LRus[index], LEng[index]);
            text = text.replace(URus[index], UEng[index]);
        }
        return text;
    }
}
, который по необходимости только расширяю
2
 Аватар для Mecid
683 / 232 / 16
Регистрация: 15.10.2007
Сообщений: 1,246
06.11.2009, 22:11
а какие у него возможности?
0
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
07.11.2009, 20:51
Mecid, насколько я знаю, то буферридер работает немного быстрее чем сканер. Возможности? Пока примитивные - транслитерация, чтение чисел с консоли в заданном диапазоне и без него, пока примитивная печать(при вызове в параметрах необходимо явное приведение типа, мне было лень для разных типов копипастить метод) и чтение из консоли самых основных типов данных. А главное, при написании программ я не задумываюсь о создании потоков, объектов и т.д. - просто вызываю статические методы класса. В остальном пока небыло нужды, так что пока в классе этого нету
0
 Аватар для Mecid
683 / 232 / 16
Регистрация: 15.10.2007
Сообщений: 1,246
07.11.2009, 23:17
static не есть хорошо сделайте,синглтон.
0
5 / 5 / 1
Регистрация: 03.12.2009
Сообщений: 19
06.12.2009, 03:50
Когда я начинал учить Java на первом курсе, в универе нам показали способ с классом Xterm, так как это только начало чтоб упростить задачу, потом конечно разжевали и другие способы...
Просто добавьте этот класс в ваш проэкт
http://odeku.narod.ru/Xterm.java

Java
1
2
3
4
5
int a =Xterm.inputInt("a=");
double a =Xterm.inputDouble("a=");
char a =Xterm.inputChar("a=");
char []a =Xterm.inputChars("a=");
String a=new String(Xterm.inputChars("a="));
0
12 / 1 / 0
Регистрация: 16.02.2012
Сообщений: 104
05.10.2012, 17:16
Подскажите пожалуйста, еще раз. Допустим я хочу написать программу: при нажатии на клавишу она выводит ее на экран.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
 
package javaapplication7;
 
/**
 *
 * @author oleg
 */
public class Main {
 
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        int a;
        string a = System.In.read();
        System.out.print(a);
        // TODO code application logic here
    }
 
}
Java
1
        string a = System.In.read();
Почему в этой строчке ошибка.

Обнесите как делать, а то читаю и не как не могу понять.
0
1 / 1 / 1
Регистрация: 13.06.2009
Сообщений: 4
05.10.2012, 17:17
System.In.read() возвращает int а не стринг. Чтобы считать строку код пишется примерно так
Java
1
2
   BufferedReader br=new BufferedReader(new InputStreamReader(System.In));
   string t=br.readline();
P.S Не забудь добавить import java.io.*
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
05.10.2012, 20:47
выше уже было написано.
Java
1
String t = br.nextLine();
String с большой буквы

Добавлено через 3 минуты
вот пример
Java
1
2
3
4
BufferedReader bReader = new BufferedReader (new InputStreamReader(System.in));
// ввод строки данных
String cStr;
cStr = bReader.readLine();
0
12 / 1 / 0
Регистрация: 16.02.2012
Сообщений: 104
06.10.2012, 01:09
Подскажите как написать протенькую программу, чтобы понять. Чтобы при нажатии с клавиатуры выводилось на экран.

Добавлено через 2 часа 11 минут
Не получается выдает ошибку,

Не понимаю, можете на примере показать, допустим у нас 2 числа мы хотим выполнить сложение, мы вводим 2 числа с клавиатуры и он выдает результат, как это сделать , я вот тока начал изучать.
0
1 / 1 / 0
Регистрация: 15.05.2014
Сообщений: 8
17.08.2014, 18:11
OlegDudrov,
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
package writeread;
 
import java.util.Scanner;
 
public class wellplayed {
 
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        String s = scan.nextLine();
        System.out.println(s);
    }
 
}
Цитирую выше написанное
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.08.2014, 18:11
Помогаю со студенческими работами здесь

Ввод массива с клавиатуры и работа с ним (сравнение, обмен элементов)
Здравствуйте. Сейчас учусь ассемблеру, как перешел к след. теме о массивах, так не могу найти годной статьи, можете помочь с написанием...

Ассемблер\Работа с файлами\Поиск в файле\ввод искомого символа с клавиатуры с выводом результата на екран.
Всем доброго времени суток. проблема то вот в чем: мне необходимо сделать програму,вводишь с клавиатуры искомый символ(-лы),результат...

Ввод с клавиатуры значения=>работа функции=>вывод значения на экран
Есть функция факториала: SECTION .start global _start _start: mov eax, 10; mov ecx, eax; mov ebx, 1; for_loop: imul ebx,...

Как правильно заменить ввод данных простой на ввод с клавиатуры?
#include &quot;stdafx.h&quot; #include &lt;cstdlib&gt; #include &lt;iostream&gt; using namespace std; int _tmain(int argc, _TCHAR* argv) ...

Файловый ввод-вывод, ввод с клавиатуры и обработка массива структур
Добрый вечер)) У меня небольшой вопрос. Почему первые буквы (в названии книг) не выводит на экран? Само задание: О каждой книге ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru