相关疑难解决方法(0)

如何比较Java中的字符串?

==到目前为止,我一直在我的程序中使用运算符来比较我的所有字符串.但是,我遇到了一个错误,将其中一个更改为了.equals(),并修复了该错误.

==坏?什么时候应该不应该使用它?有什么不同?

java string equality

726
推荐指数
23
解决办法
376万
查看次数

Java中==和equals()之间有什么区别?

我想澄清一下我是否理解正确:

  • == - >是参考比较,即两个对象都指向相同的内存位置
  • .equals() - >计算对象中值的比较

我的理解是正确的吗?

java identity equality object-comparison

592
推荐指数
12
解决办法
62万
查看次数

239
推荐指数
9
解决办法
27万
查看次数

"text"和new String("text")之间有什么区别?

这两个陈述之间有什么区别?

String s = "text";

String s = new String("text");
Run Code Online (Sandbox Code Playgroud)

java string

187
推荐指数
4
解决办法
7万
查看次数

字符串是Java中的对象,那么为什么我们不使用"new"来创建它们呢?

我们通常使用new关键字创建对象,例如:

Object obj = new Object();
Run Code Online (Sandbox Code Playgroud)

字符串是对象,但我们不使用new它们来创建它们:

String str = "Hello World";
Run Code Online (Sandbox Code Playgroud)

为什么是这样?我可以用一个字符串new吗?

java string core new-operator

101
推荐指数
6
解决办法
6万
查看次数

为什么("foo"=== new String("foo"))在JavaScript中评估为false?

在比较字符串值时,我会一直开始使用===(三等号,严格比较),但现在我发现了

"foo" === new String("foo")
Run Code Online (Sandbox Code Playgroud)

是假的,与此相同:

var f = "foo", g = new String("foo");
f === g; // false
Run Code Online (Sandbox Code Playgroud)

当然:

f == g; // true
Run Code Online (Sandbox Code Playgroud)

那么建议总是使用==进行字符串比较,或者总是在比较之前将变量转换为字符串?

javascript equality object

98
推荐指数
3
解决办法
5328
查看次数

什么是Java中的字符串池?

我对Java中的StringPool感到困惑.我在阅读Java中的String章节时遇到过这个问题.请以外行的方式帮助我理解StringPool实际上做了什么.

java

65
推荐指数
4
解决办法
11万
查看次数

为什么整数常量池的行为在127处变化?

我无法理解Java Constant Pool for Integer的工作原理.

我理解字符串的行为,因此能够证明自己与Integer Constants的情况相同.

所以,对于整数

Integer i1 = 127;
Integer i2 = 127;
System.out.println(i1==i2); // True
Run Code Online (Sandbox Code Playgroud)

&

Integer i1 = new Integer(127);
Integer i2 = new Integer(127);
System.out.println(i1==i2); // False
Run Code Online (Sandbox Code Playgroud)

直到这里,一切都在我的脑海里.

我无法消化的是,当我从127增加整数时,它的行为有所不同.这种行为在127之后发生变化,下面是代码片段

Integer i1 = 128;
Integer i2 = 128;
System.out.println(i1==i2); // False. WHY?????
Run Code Online (Sandbox Code Playgroud)

有人可以帮我理解吗?

java integer constants

36
推荐指数
3
解决办法
2万
查看次数

如何检查字符串池内容?

有没有办法检查,目前字符串池中有哪些字符串.

我可以以编程方式列出池中存在的所有字符串吗?

要么

任何IDE都有这种插件吗?

java string string-pool

25
推荐指数
1
解决办法
3698
查看次数

计算由Java代码创建的String对象

以下代码创建了多少个String对象?

String x = new String("xyz");
String y = "abc";
x = x + y;
Run Code Online (Sandbox Code Playgroud)

我访问过许多网站,其中一些人说这行代码创建了3个对象,有些人说它创建了4个.我只是想知道在执行这行代码后创建了多少个对象.

java string

23
推荐指数
5
解决办法
7502
查看次数