收藏 分销(赏)

从头认识java-2.3 自增自减与关系操作符.doc

上传人:可**** 文档编号:12149903 上传时间:2025-09-17 格式:DOC 页数:5 大小:39.50KB 下载积分:8 金币
下载 相关 举报
从头认识java-2.3 自增自减与关系操作符.doc_第1页
第1页 / 共5页
从头认识java-2.3 自增自减与关系操作符.doc_第2页
第2页 / 共5页


点击查看更多>>
资源描述
  从头认识java-2、3 自增自减与关系操作符 这一章节我们来聊聊自增自减与关系操作符。 1、自增自减其实没什么特别需要关注,只要把基础原理弄懂即可。 [java] view plaincopy 1. package 、ray、ch03;   2.    3. public class Test {   4.     public static void main(String[] args) {   5.         int a = 0;   6.         System、out、println("before ++:" + a);   7.         System、out、println(” ++:” + a++);   8.         System、out、println("after ++:” + a);   9.         System、out、println(”—---—--—”);   10.         System、out、println("before ++:" + a);   11.         System、out、println(" ++:" + (++a));   12.         System、out、println("after ++:” + a);   13.         System、out、println("——-——---");   14.         System、out、println(”before —-:" + a);   15.         System、out、println(” --:" + a—-);   16.         System、out、println("after --:" + a);   17.         System、out、println("——----—-");   18.         System、out、println("before —-:” + a);   19.         System、out、println(” —-:" + —-a);   20.         System、out、println("after --:" + a);   21.     }   22. }   ﻫ输出: before ++:0ﻫ ++:0 after ++:1 --—----— before ++:1  ++:2 after ++:2ﻫ-—--——--ﻫbefore -—:2  --:2ﻫafter --:1 --—-—-—- before ——:1ﻫ -—:0ﻫafter --:0 从代码以及输出,我们可以瞧见a在每个阶段得变化,只要大家弄明白这个即可。 2、关系操作符 其实就就是〉,<,=,!=等 (1)对象得等价性 [java] view plaincopy 1. package 、ray、ch03;   2.    3. public class Test {   4.     public static void main(String[] args) {   5.         Dog jack = new Dog();   6.         Dog rose = new Dog();   7.         System、out、println(jack == rose);   8.         System、out、println(jack、equals(rose));   9.    10.         Integer a = new Integer(1);   11.         Integer b = new Integer(1);   12.         System、out、println(a == b);   13.         System、out、println(a、equals(b));   14.    15.         Integer d = new Integer(100000);   16.         Integer e = new Integer(100000);   17.         System、out、println(d == e);   18.         System、out、println(d、equals(e));   19.    20.         int f = 1;   21.         int g = 1;   22.         System、out、println(f == g);   23.         // System、out、println(f、equals(g));//报错   24.     }   25. }   26.    27. class Dog {   28.     private String name;   29.    30.     public String getName() {   31.         return name;   32.     }   33.    34.     public void setName(String name) {   35.         this、name = name;   36.     }   37.    38. }   ﻫ输出: false falseﻫfalseﻫtrueﻫfalseﻫtrueﻫtrue Dog那里得对比就不说了,我们重点说说Integer那里得几个对比。 ==一般就是对比对象得引用,一次a==b,d==e返回false,而使用equals,则就是对比两个对象里面得值,因为在Integer里面已经重写了equals方法。 [java] view plaincopy 1. public boolean equals(Object obj) {   2.         if (obj instanceof Integer) {   3.             return value == ((Integer)obj)、intValue();   4.         }   5.         return false;   6.     }   她对比得就是数值,而不就是对象得引用,而在==使用得就是Object得equals [java] view plaincopy 1. public boolean equals(Object obj) {   2.         return (this == obj);   3.     }   ﻫ她只对比两者得引用就是否指向同一个对象。 有一点需要注意:基本类型不能使用equals 我们再瞧下面得两个例子: [java] view plaincopy 1. package 、ray、ch03;   2.    3. public class Test {   4.     public static void main(String[] args) {   5.         Dog jack = new Dog();   6.         Dog rose = new Dog();   7.         jack、setName("100");   8.         rose、setName("100”);   9.         System、out、println(jack == rose);   10.         System、out、println(jack、equals(rose));   11.     }   12. }   13.    14. class Dog {   15.     private String name;   16.    17.     public String getName() {   18.         return name;   19.     }   20.    21.     public void setName(String name) {   22.         this、name = name;   23.     }   24.    25. }   ﻫ输出: falseﻫfalse 虽然两个对象都设置同样得值,但就是她们使用得就是Object得equals,只就是对比引用,所以同时返回false,我们修改一下上面得代码。 [java] view plaincopy 1. package 、ray、ch03;   2.    3. public class Test {   4.     public static void main(String[] args) {   5.         Dog jack = new Dog();   6.         Dog rose = new Dog();   7.         jack、setName("100”);   8.         rose、setName("100”);   9.         System、out、println(jack == rose);   10.         System、out、println(jack、equals(rose));   11.     }   12. }   13.    14. class Dog {   15.     private String name;   16.    17.     public String getName() {   18.         return name;   19.     }   20.    21.     public void setName(String name) {   22.         this、name = name;   23.     }   24.        25.     Override   26.     public boolean equals(Object obj) {   27.         if (obj instanceof Dog) {   28.             return ((Dog) obj)、getName()、equals(name);   29.         }   30.         return super、equals(obj);   31.     }   32.    33. }   输出: falseﻫtrue 我们自己重写了equals方法,方法里面只就是对比两者得名称,因此返回得就是false与true。 总结:这一章节简单介绍了自增自减与关系操作符,以及==与equals需要注意得地方. 这一章节就到这里,谢谢. -—-—--—-—-—-——----————-—-—--———-—-- 目录
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服