是的,Java中的set
方法可以用于不可变对象。不可变对象是指在创建后其状态就不能改变的对象。在Java中,字符串(String)和包装类(如Integer
、Double
等)都是不可变对象。
对于不可变对象,你可以使用set
方法来修改对象的属性值,但实际上这些修改并不会影响到原始对象。这是因为不可变对象的状态在创建后就被固定了,任何对属性的修改都会创建一个新的对象,而不是修改原始对象。
例如,对于字符串,你可以使用substring
方法来创建一个新的字符串,而不是修改原始字符串:
String originalString = "Hello"; String modifiedString = originalString.substring(1); // "ello"
在这个例子中,substring
方法返回了一个新的字符串,而不是修改原始字符串originalString
。因此,对于不可变对象,set
方法实际上并没有修改对象的状态,而是创建了一个新的对象。