请帮我,java中的string.equals如何与null值一起使用?例外情况有问题吗?三种情况:
boolean result1,result2, result3;
//1st case
String string1 = null;
String string2 = null;
result = string1.equals(string2);
//2nd case
String string1 = "something";
String string2 = null;
result2 = string1.equals(string2);
//3rd case
String string1 = null;
String string2 = "something";
result3 = string1.equals(string2);
结果的价值是什么?我期望这个值:
result1为true;
result2为假;
result3为假;
您不能使用解引用(。)来访问实例变量或在实例上调用方法(如果该实例为)null
。这样做会产生一个NullPointerException
。
通常,使用您知道为非null的东西进行字符串比较。例如,"something".equals(stringThatMayBeNull)
。
问题内容: String[] letters = {“A”, “B”, “C”, “D”, “E”, “F”, “G”, “H”, “I”, “L”}; 为什么是 Fk呀! 输入AL字母之一绝对不会发生? 问题答案: 字符串是对象。所述通过引用,而不是由它们的内部值进行比较的对象。 有两种解决方案: 使用method来比较两个对象的值。 使用代替。这是原始的,因此可以使用。
问题内容: 我试图理解字符串比较与字符串比较的输出。需要明确的是,我拥有使用==和equals比较两个字符串的类。我试图将==和equals()的输出合并为字符串。equals()的输出会连续显示,但==的输出不会 连续显示。使用Java的装箱功能,将与字符串连接的布尔值联系起来。equals和==都返回布尔值。那么为什么会有这种差异呢?有人可以解释吗? 输出 更新:答案 如果不使用s1 == s
问题内容: String s1 = “andrei”; String s2 = “andrei”; 提供以下代码,为什么第二个比较s2 == s3为true?s2.toString()返回的实际上是什么?实际位于哪里? 问题答案: 首先是无操作: 其次,对String常量进行了插值,因此s1和s2在幕后被更改为相同的String实例。
我的应用程序有一个自动更新功能。为了验证它是否成功下载了文件,我比较了两个哈希,一个是xml,另一个是下载后生成的哈希。两个哈希是一样的,但我发现两个哈希不一样。当我检查大小时,xml哈希字符串有66个,另一个是36个。我使用了trim方法,但还是运气不好。 哈希代码
当使用and这两个都创建不同的String对象吗?我知道如果我使用它使用s1的相同对象,但在s2的情况下也使用相同的对象吗?如果是这样,那么为什么使用不同的对象。因为如果我做它返回false; 我对等于方法的理解是,它比较两个引用是否引用同一个对象,除非我们重写了等于方法,如果我的理解是错的,请告诉我。
问题内容: 快速提问。是否有等效于@的Java字符串: 例如,我可以使用C#进行处理,并使其在处理时忽略转义字符,而不必这样做。是否有Java等效项? 嗯:stackoverflow正在向我逃脱..大声笑。第二个示例应为: c :(双反斜杠)文件夹(双反斜杠)aFile 问题答案: 没有。转义/外部化字符串是您唯一的选择。