在这个给定的程序中,输出显示为name的空白。原因是我们使用了read()
和readLine()
方法。
//Employee details
import java.io.*;
public class Empdata {
public static void main(String[] args) throws IOException {
// create BufferedReader object to accept data from keyboard
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in));
// accept employee details
System.out.print("Enter id:");
int id = Integer.parseInt(br.readLine());
System.out.print("Enter sex(M/F):");
char sex = (char) br.read();
System.out.print("Enter name:");
String name = br.readLine();
// display the employee details
System.out.println("Id:" + id);
System.out.println("Sex:" + sex);
System.out.println("Name:" + name);
}
}
输出
输入id:10
输入性别(男/女):M
输入姓名:id:10
性别:M
姓名:
答案 0 :(得分:0)
有两种方法可以解决这个问题
1.使用 charAt(0)
2.使用 br.skip(2)
enter code here
//员工详细信息
import java.io. *;
公共课Empdata1 {
public static void main(String [] args)抛出IOException {
//创建BufferedReader对象以接受来自键盘的数据
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//接受员工详细信息
System.out.print(“输入id:”);
int id = Integer.parseInt(br.readLine());
System.out.print(“输入性别(男/女):”);
char sex =(char)br.read();
// char sex = br.readLine()。charAt(0);
//解决方案2:跳过2个字符
br.skip(2);
System.out.print(“输入名称:”);
String name = br.readLine();
//显示员工详细信息
的System.out.println( “ID:” + ID);
的System.out.println( “性别:” +性别);
的System.out.println( “名称:” +姓名);
}
}
<强>输出:强>
输入id:10
输入性别(男/女):M
输入姓名:Vinay
ID:10
性别:M
名称:维奈