Что самый быстрый путь состоит в том, чтобы считать из System.in в Java?

Я читаю набор целых чисел, разделенных пространством или новыми строками из стандарта в использовании Scanner(System.in).

Есть ли какой-либо более быстрый способ сделать это в Java?

60
задан 13 August 2011 в 19:27

2 ответа

Если Вы спрашивающий с конкурентоспособной точки зрения программирования, где, если представление не достаточно быстро, это будет ТЕЛ.
Затем, можно проверить следующий метод для получения Строки от System.in. Я взял от одного из лучшего кодера в Java (конкурентоспособные сайты)

private String ns()
{
    int b = skip();
    StringBuilder sb = new StringBuilder();
    while(!(isSpaceChar(b))){ // when nextLine, (isSpaceChar(b) && b != ' ')
        sb.appendCodePoint(b);
        b = readByte();
    }
    return sb.toString();
}`
3
ответ дан 1 November 2019 в 10:32

StringTokenizer намного более быстрый способ входа строки чтения, разделенного маркерами.

Проверка ниже примера для чтения строки целых чисел, разделенных пространством и хранилищем в arraylist,

String str = input.readLine(); //read string of integers using BufferedReader e.g. "1 2 3 4"
List<Integer> list = new ArrayList<>();
StringTokenizer st = new StringTokenizer(str, " ");
while (st.hasMoreTokens()) {
    list.add(Integer.parseInt(st.nextToken()));
} 
1
ответ дан 1 November 2019 в 10:32

Другие вопросы по тегам:

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