本月博客排行
-
第1名
龙儿筝 -
第2名
johnsmith9th -
第3名
wy_19921005 - zysnba
- sgqt
- lemonhandsome
年度博客排行
-
第1名
宏天软件 -
第2名
青否云后端云 -
第3名
龙儿筝 - gashero
- wallimn
- vipbooks
- benladeng5225
- wy_19921005
- fantaxy025025
- e_e
- zysnba
- ssydxa219
- sam123456gz
- javashop
- arpenker
- tanling8334
- kaizi1992
- xpenxpen
- wiseboyloves
- xiangjie88
- ranbuijj
- ganxueyun
- xyuma
- sichunli_030
- wangchen.ily
- jh108020
- lemonhandsome
- zxq_2017
- jbosscn
- Xeden
- luxurioust
- johnsmith9th
- lzyfn123
- zhanjia
- forestqqqq
- ajinn
- nychen2000
- wjianwei666
- hanbaohong
- daizj
- 喧嚣求静
- silverend
- mwhgJava
- kingwell.leng
- lchb139128
- lich0079
- kristy_yy
- jveqi
- java-007
- sunj
最新文章列表
对对字符串可能出现报空指针的小问题
今天很是郁闷啊,遇到一个基础的问题比对字符串的两种写法:
1.
String s = null;
"1".equals(s);
2.
String s1 = null;
s.equals("");
第一种不会报错,第二种会报错,修改报空指针问题的时候将我写的2改成了1的格式,被教育啊 记下以后改正!
遵守equals和hashCode方法的通用约定 (2)
如前文所述,在覆盖了equals方法的类中,也必须覆盖hashCode方法。否则违反了Object.hashCode的通用约定会导致该类无法和基于散列的集合(HashMap,HashSet和HashTable)一起正常使用。
如下约定内容摘自Object规范:
1. 在应用程序中,只要对象的euqals方法的比较操作所用的信息没有修改,那么对于同一个对象的调用多次hashCode,必须始 ...
遵守equals和hashCode方法的通用约定 (1)
覆盖equals方法和hashCode方法看似简单,但其实不然,如果没有按照jdk的通用规范去覆盖,那么基于这些约定的类将可能无法正常工作,例如基于散列的集合类HashMap和HashSet.
对于值类,我们通常需要覆盖Object.equals方法,因为我们希望通过equals方法知道它们在逻辑上是否相等.相应的这个类的实例可以被用作map的key,或者set的元素的时候才会表现出预期的行 ...
Java中的一些小知识(转载)
今天在查一些资料的时候看到这么一篇文章,感觉对于Java初学者的我来说,都是必须要理清的知识,所以整理了下后,记录下来方便以后查阅。。内容均来自于CSDN的经典博文。问题一:我声明了什么!String s = "Hello world!";许多人都做过这样的事情,但是,我们到底声明了什么?回答通常是:一个String,内容是“Hello world!”。这样模糊的回答通常是概念 ...
equals()和==的联系与区别
1.==的含义,如果是比较基本数据类型,那么就是比较数据类型字面值的大小。如果是比较引用数据类型,就是比较它们在内存地址上是否是相同的。
2.equals方法,是Object类的方法之一,所有的java类都有这个方法,区别只是自己有没有重写的问题。如果没有重写,那么也是直接比较内存地址是否相同。重写了,那就要看它们是怎么重写的。
看下面的例子
String str1 = &qu ...
JAVA equals方法重写时要重写hashCode方法
package test;
import java.util.HashSet;
import java.util.Set;
/**
* @author qxch0372@163.com
*/
public class Test1
{
public static void main(String[] args) {
Set<Student> s ...
Java 重写Object类中equals和hashCode方法
一:怎样重写equals()方法? 重写equals()方法看起来非常简单,但是有许多改写的方式会导致错误,并且后果非常严重。要想正确改写equals()方法,你必须要遵守它的通用约定。下面是约定的内容,来自java.lang.Object的规范: equals方法实现了等价关系(equivalence relation): 1. 自反性:对于任意的引用值x,x.equals(x)一定为tr ...
java中个数据类型在内存中分配详解 以及equals and ==的区别
1.java中个数据类型在内存中分配详解
http://www.360doc.com/content/10/1002/21/2088355_58009874.shtml
2.java中equals和==的区别
http://xwfsdjk.iteye.com/blog/1830548
3.junit源码
http://www.blogjava.net/DLevin/archive/2012/05 ...