Skip to content

Commit fd0957b

Browse files
authored
God has set forth us the apostles
For I think that God has set forth us the apostles last, as appointed to death: for we are made a spectacle unto the world, and to angels, and to men. (1Cor 4:9)
1 parent a6446bb commit fd0957b

1 file changed

Lines changed: 71 additions & 0 deletions

File tree

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
2+
//For I think that God has set forth us the apostles last, as appointed to death: for we are made a spectacle unto the world, and to angels, and to men. (1Cor 4:9)
3+
4+
package com.javarush.task.task30.task3008;
5+
6+
import java.io.*;
7+
8+
public class ConsoleHelper {
9+
private static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
10+
11+
public static void writeMessage(String message) {
12+
System.out.println(message);
13+
}
14+
15+
public static String readString() {
16+
String message ="";
17+
boolean messageCorrect = false;
18+
while (!messageCorrect) {
19+
try{
20+
message = br.readLine();
21+
messageCorrect = true;
22+
}catch(IOException e) {System.out.println("Произошла ошибка при попытке ввода текста. Попробуйте еще раз.");}
23+
}
24+
return message;
25+
}
26+
27+
public static int readInt() {
28+
int numb = 0;
29+
boolean numberCorrect = false;
30+
while(!numberCorrect) {
31+
try{
32+
numb = Integer.parseInt(readString());
33+
numberCorrect = true;
34+
}catch(NumberFormatException e) {System.out.println("Произошла ошибка при попытке ввода числа. Попробуйте еще раз.");}
35+
}
36+
return numb;
37+
}
38+
}
39+
40+
/*
41+
Чат (2)
42+
Первым делом, для удобства работы с консолью реализуем класс ConsoleHelper. В
43+
дальнейшем, вся работа с консолью должна происходить через этот класс.
44+
45+
Добавь в него:
46+
1. Статическое поле типа BufferedReader, инициализированное с помощью System.in.
47+
2. Статический метод writeMessage(String message), который должен выводить
48+
сообщение message в консоль.
49+
3. Статический метод String readString(), который должен считывать строку с
50+
консоли. Если во время чтения произошло исключение, вывести пользователю
51+
сообщение «Произошла ошибка при попытке ввода текста. Попробуйте еще раз.» И
52+
повторить ввод. Метод не должен пробрасывать исключения IOException наружу.
53+
Другие исключения не должны обрабатываться.
54+
4. Статический метод int readInt(). Он должен возвращать введенное число и
55+
использовать метод readString(). Внутри метода обработать исключение
56+
NumberFormatException. Если оно произошло вывести сообщение «Произошла ошибка
57+
при попытке ввода числа. Попробуйте еще раз.» И повторить ввод числа.
58+
59+
В этой задаче и далее, если не указано дополнительно другого, то все поля класса должны
60+
быть приватными, а методы публичными.
61+
62+
63+
Требования:
64+
1. В классе ConsoleHelper должно быть создано и инициализировано приватное статическое поле типа BufferedReader.
65+
2. В классе ConsoleHelper должен быть реализован статический метод writeMessage(String message), выводящий сообщение на консоль.
66+
3. В классе ConsoleHelper должен быть реализован статический метод readString, возвращающий строку считанную с консоли.
67+
4. В классе ConsoleHelper должен быть реализован статический метод readInt, возвращающий число считанное с консоли.
68+
5. Метод readInt должен использовать метод readString для чтения с консоли.
69+
6. Метод readString должен перехватывать IOException, выводить сообщение о некорректном вводе и повторять считывание с консоли.
70+
7. Метод readInt должен перехватывать NumberFormatException, выводить сообщение о некорректном вводе и повторять считывание с консоли.
71+
*/

0 commit comments

Comments
 (0)