String pw = c.readPassword("%s", "pw: ");
System.out.println("got " +pw);
String name = c.readLine("%s", "name: ");
System.out.println(" got ", name);
如果用户在提示输入密码时键入fido
,然后在提示输入名称时回复bob
,结果是什么?
一个。 pw:得到了fido名字:bob得到了bob
B中。 pw:fido得到了fido的名字:bob得到了bob
℃。 pw:得到了fido名字:bob得到了bob
d。 pw:fido得到了fido的名字:bob得到了bob
电子。编译失败。
F。在运行时抛出异常。
答案是E
根据我的回答是E,但我认为在控制台中你不能readPassword
String
,因为char[]
更安全。但SCJP的书说它是因为你不能在
System.out.println(" got ", name);
“:即使用”,“。我同意书,但我想知道,如果我们写
System.out.println("got" + name);
它会工作正常吗?什么输出?为什么不使用char[]
代替String
?
答案 0 :(得分:0)
user2985842你是对的它有两个错误
1)正如你所说的那样
String pw = c.readPassword("%s", "pw: ");
包含错误,readPassword()返回char []但是左值是字符串
2)正如他们所说的那样
System.out.println(" got ", name);
包含错误,一定是
System.out.println(" got "+ name);