Java 赋值和创建对象之间有什么区别

Java 赋值和创建对象之间有什么区别,java,string,integer,variable-assignment,Java,String,Integer,Variable Assignment,我们可以这么说 String s=new String ("test"); String s="test"; 及 区别是什么?String s=new String test>>将始终创建一个新实例 String s=test>>如果String-literal测试已经存在于String-pool-Java堆中,则引用s将指向该文本,不会创建新实例。 请参考下图以获得更清晰的信息 整数i=新的整数10 整数i=10 有什么区别 上面的语句构造了一个新创建的整数对象,该对象表示指定的int值。i

我们可以这么说

String s=new String ("test");
String s="test";


区别是什么?

String s=new String test>>将始终创建一个新实例

String s=test>>如果String-literal测试已经存在于String-pool-Java堆中,则引用s将指向该文本,不会创建新实例。 请参考下图以获得更清晰的信息

整数i=新的整数10

整数i=10

有什么区别

上面的语句构造了一个新创建的整数对象,该对象表示指定的int值。i是一个引用变量,新的Integer10创建一个值为int 10的Integer类型的对象,并将此对象引用分配给变量i

有关Integer的详细信息,请访问:

考虑以下陈述:

Integer i = 10;
结果与早期构造相同;创建一个整数包装器对象。这只是一种方便的语法。例如,请参见以下代码:

Integer i = new Integer(10);
System.out.println(++i); // this prints 11
java.lang.Integer类定义中没有像++这样的语法。这里发生了什么

语句++i将整数解装箱为int,对int值执行++操作,然后将其装箱-这将导致int值从10增加到11的对象整数。此功能称为自动装箱;注意,这个特性是在Java5中引入的


注意:上述澄清不适用于本文中提出的有关字符串类的问题。

在您的示例中,几乎不适用。也许会问这样一个问题,生孩子和生孩子有什么区别?我不明白这一点。你能用java来详细说明吗??或者你能让我两者都明白吗?@Sanjay Dev我建议你阅读OOP的概念,有很多网站都在教授这个概念。有关更多信息,请参阅Oracle网站上的说明和。并且,s1.equals3返回一个true
Integer i = 10;
Integer i = new Integer(10);
System.out.println(++i); // this prints 11