coding01

Author Avatar
cuteximi 5月 05, 2017
  • 在其它设备中阅读本文章

前言

在coding过程中遇到的问题:

  • 1.IED的选择,从今天开始使用intellij Idea
  • 2.在添加判断的时候 equals和==的区别

    首先介绍一个intellij Idea

公认的java开发最好工具之一。当然最突出的功能是Debug

官网地址:IDEA

打开软件:很美观吧

image

软件的使用部分:

image

  • setting:IDEA配置
  • plugins:插件管理
  • project defaults:项目配置

快捷键:
image
image
image
image
image

equals和==


1.==

对于基本数据类型 使用==判断数值是否相等

对于引用类型的时候,例如String s = new String();
此时s占一块内存空间,new String()占一块空间;==比较的是,s中的数值就是对象占用的那块内存的的首地址

2.equals

比较两个对象的内容是否相等;

equals方法是Object类的一个方法,每个java类都继承了该方法,所以呢,每个对象都具有这个方法

Object类定义的equals(Obejct)方法是直接使用“==”运算符实现比较两个对象的,所以在没有覆盖equals()的情况下,equals()和==一样 ,比较的是引用;

hashCode

也是继承自Object类,返回对象在内存中地址转换成的int值,所有如果没有重写hashCode()时,每个对象的返回的hashCode值是不相同 的;

equals和hashCode的关系如下:

x.equals(y)返回true,则x和y对应的hashCode()返回值也相等;

x.equals(y)返回false,则x和y对应的hashCode()返回值可能相等,也可能不相等

This blog is under a CC BY-NC-SA 3.0 Unported License
本文链接:http://blog.cuteximi.com/coding01/