【发布时间】:2012-05-10 14:09:45
【问题描述】:
对于这个相当简单的问题,我很抱歉。 我有这个非常简单的 java 程序:
public class ArgIt {
public static void main(String[] args){
if(args[0].equals("x")) System.out.print("x");
if(args[0] == "x") System.out.println("x2 ");
}
}
如果我调用程序 >java ArgIt x 它只打印一个 x。 为什么程序在任何其他情况下都不会确认字符串上的 ==?
【问题讨论】:
-
我期待超过四个答案
-
检查字符串实习 - en.wikipedia.org/wiki/String_intern_pool。第二个条件失败,因为两个字符串对象不一样,所以引用不一样,==返回false。
-
仅供参考,我在上面发布的链接是 that page 底部的 Java 常见问题解答的一部分。
-
@dragon66:你的愿望实现了......超过四个......