一位采访者问我下面的问题是该计划的产出是什么。
但是我在最后尝试了第一行编译,但是第二行没有编译它背后的原因。
任何人都可以告诉我。
package swain.javainterviewhub.blogspot.in;
import java.util.Scanner;
public class JavaInterviewHub {
public static void main(String[] args) {
String str=null;
System.out.println(str);//Line 1 Compile
System.out.println(null);/Line 2 Not compile
}
}
在real.Its字符串或charecter或整数中是什么。我的问题是什么是null类型。 谢谢 Sitansu
答案 0 :(得分:7)
第二行没有编译,因为System.out
是PrintStream
实例,PrintStream
有多个println
方法,它采用引用类型参数({ {1}}和println(String x)
)。传递println(char x[])
时,编译器无法决定选择哪种重载方法。
null
传递编译,因为参数的类型(System.out.println(str)
)仅匹配String
- println
的一个重载版本。
答案 1 :(得分:2)
你可以施展它以使其发挥作用
System.out.println((String)null);
答案 2 :(得分:-1)
我不知道为什么要打印BufReader
。您可以在打印声明中将其标记为Null
。
你可以这样使用:
String