使用 BufferedReader 时如何将 String 转换为 int?据我记得,它如下所示:
System.out.println("input a number");
int n=Integer.parseInt(br.readLine(System.in));
但由于某种原因,它不起作用。
错误消息说:
没有找到合适的方法readLine(java.io.InputStream)
它还说不br.readLine
适用
使用 BufferedReader 时如何将 String 转换为 int?据我记得,它如下所示:
System.out.println("input a number");
int n=Integer.parseInt(br.readLine(System.in));
但由于某种原因,它不起作用。
错误消息说:
没有找到合适的方法readLine(java.io.InputStream)
它还说不br.readLine
适用
需要InputStreamReader
在构造函数中为BufferedReader
. 将InputStreamReader
字节流转换为字符流。正如其他人所提到的,要认识到可以从这段代码中抛出的异常,例如 IOException 和 NumberFormatException。
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("input a number");
int n = Integer.parseInt(br.readLine());
使用时,BufferedReader
您必须注意它可能抛出的异常。此外,如果您提供的Integer.parseInt(String s)
内容无法转换为.NumberFormatException
String
Integer
try {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
while ((thisLine = br.readLine()) != null) {
System.out.println(thisLine);
Integer parsed = Integer.parseInt(thisLine);
System.out.println("Parsed integer = " + parsed);
}
} catch (IOException e) {
System.err.println("Error: " + e);
} catch (NumberFormatException e) {
System.err.println("Invalid number");
}
尝试这个
BufferedReader br = new BufferedReader(System.in);
String a=br.readLine()
Integer x = Integer.valueOf(a);
System.out.println(x);//integer value
试试这个方法
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String input = reader.readLine();
int n=Integer.parseInt(input);
尝试这个:
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("input a number");
try{
int n = Integer.parseInt(br.readLine());
} catch (IOException e) {e.printStackTrace();}
DataInputStream br=new DataInputStream(System.in);
System.out.println("input a number");
int n=Integer.parseInt(br.readLine(System.in));