"=="和equals方法究竟有什么区别?

== 操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相等,只能用==操作符。

如果一个变量指向的数据是对象类型的,那么,这时候涉及了两块内存,对象本身占用一块内存(堆内存),变量也占用一块内存,例如Objet obj = new Object();变量obj是一个内存,new Object()是另一个内存,此时,变量obj所对应的内存中存储的数值就是对象占用的那块内存的首地址。对于指向对象类型的变量,如果要比较两个变量是否指向同一个对象,即要看这两个变量所对应的内存中的数值是否相等,这时候就需要用==操作符进行比较。


equals方法是用于比较两个独立对象的内容是否相同,就好比去比较两个人的长相是否相同,它比较的两个对象是独立的。例如,对于下面的代码:

String a=new String("foo");

String b=new String("foo");

两条new语句创建了两个对象,然后用a,b这两个变量分别指向了其中一个对象,这是两个不同的对象,它们的首地址是不同的,即a和b中存储的数值是不相同的,所以,表达式a==b将返回false,而这两个对象中的内容是相同的,所以,表达式a.equals(b)将返回true。

Oracle 企业版和标准版 究竟有什么区别?

02-17

Oracle 企业版和标准版 究竟有什么区别?rnrn标准版 rnrn标准版包含下列组件:rnrn· Jserver Enterprise Editionrn· InterMediarn· Enterprise Managerrn· Workflow Standard Editionrn· Standard Management Packrn· Object Option · Networking kitrn· Object for OLErn· Distributed Optionrn· 64 bit Optionrn· ODBC Driverrn· Sql*Plusrn· OCI rnrn企业版 rnrn企业版包括标准版中所有组件,并且还含有下列额外的组件:rnrn· Jserver Enterprise Editionrn· InterMediarn· Object Optionrn· Networking kitrn· Object for OLErn· Advance Replication Optionrn· Distributed Optionrn· Parallel Query Optionrn· SQL*Plusrn· VIR · Workflow Enterprise Editionrn· Advanced backup & recoveryrn· Connection Poolrn· 64 bit Optionrn· ODBC Driverrn· OCIrn· Enterprise Managerrn· Enterprise Backup Utility rnrnOracle9i数据库的企业版和标准版最主要的区别在于企业版有更强大的并行和分布式处理能力,标准版是专为开发、部署和管理部门级 Internet 应用程序而设计的数据库管理系统,是用于传统的部门级应用程序的一流数据库。而应用超出部门级标准或访问数据库的人较多时,则应当选用企业版。rn---------------------------------------------------rn上述这段话出自一个网站(http://www.wonderservice.com/server/oracle.php3),但我还是搞不明白两者最大的区别是什么,好象标准版也是有很强功能的呀,如果一般性的应用完全可以适合,为什么企业版SO贵呢?

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试