Discuss / Java / 在java里这样理解对吗?

在java里这样理解对吗?

Topic source

蔚蓝Weinan

#1 Created at ... [Delete] [Delete and Lock User]

想通过python解释一下,传入string 和 传入[   ]的区别:

在python里string是不可变数据类型,相当于是一个元组,而元组不可变。

1.string 是使用副本(id不同):如果使用元组只能复制,class中使用的string其实是一个string的副本。

2.数组是引用(id相同):而[   ]是可变的,[    ]是容器,class中使用的[     ]就是通过内存地址引用原来的数组

蔚蓝Weinan

#2 Created at ... [Delete] [Delete and Lock User]

有大神吗?来讨论下

廖雪峰

#3 Created at ... [Delete] [Delete and Lock User]
  1. 所有对象都是传引用
  2. 不变和可变是设计出来的,跟语言本身无关
  3. 不变和可变都是传引用(参考1)

Java和Python只是把String设计成不变,也可以设计成可变,如果你用过Ruby


  • 1

Reply