2009-12-02 3 views
1

Im используется слишком с помощью сканера в основном и хочет тоже попробовать использовать буферный читатель: Вот что я до сих порКак ввести строку из буферизованного считывателя?

import java.util.*; 
import java.io.*; 
public class IceCreamCone 
{ 
// variables 
String flavour; 
int numScoops; 
Scanner flavourIceCream = new Scanner(System.in); 

// constructor 
public IceCreamCone() 
{ 

} 
// methods 
public String getFlavour() throws IOexception 
{ 
    try{ 

    BufferedReader keyboardInput; 
    keyboardInput = new BufferedReader(new InputStreamReader(System.in)); 
    System.out.println(" please enter your flavour ice cream"); 
    flavour = keyboardInput.readLine(); 
    return keyboardInput.readLine(); 
    } 
    catch (IOexception e) 
    { 
     e.printStackTrace(); 
    } 
} 

IM достаточно уверен, чтобы получить Int вы можете сказать

Integer.parseInt(keyboardInput.readLine()); 

но что мне делать, если я хочу строку

+1

Почему это было приостановлено? –

ответ

5

keyboardInput.readLine() уже возвращает строку, так что вы должны просто сделать:

return keyboardInput.readLine(); 

(обновление)

Метод readLine бросает IOException. Вы либо выбрасываете исключение:

public String getFlavour() throws IOException { 
    ... 
} 

или вы обрабатываете его в своем методе.

public static String getFlavour() { 
    BufferedReader keyboardInput = null; 
    try { 
     keyboardInput = new BufferedReader(new InputStreamReader(System.in)); 
     System.out.println(" please enter your flavour ice cream"); 
     // in this case, you don't need to declare this extra variable 
     // String flavour = keyboardInput.readLine(); 
     // return flavour; 
     return keyboardInput.readLine(); 
    } catch (IOException e) { 
     // handle this 
     e.printStackTrace(); 
    } 
    return null; 
} 
+0

im все еще получает ошибку компиляции таким образом. я не понимаю. Ваш рассказывающий мне, что у меня тоже нет вкуса, определенного как строка, просто строка, которая будет печатать? – OVERTONE

+0

Какая ошибка при получении? –

+0

неиспользованный io исключение. я тоже изменил код, что вы мне дали. – OVERTONE