java编程遇到的一些基本语法总结

1.==和equals
==是操作符,用于判断(引用)the same one(变量(栈)内存中存放的对象的(堆)内存地址)
equals用于判断(对象的)值是否相等,(equals只能用于对象(类,不能用于基本数据类型,必须转换成包装器类))String重写了equals方法, Object中的equals方法和“==”一样,而String、Integer等等一些类,重写了equals,才使得equals和“==不同”,所以,当自己创建类时,自动继承了Object的equals方法,要实现不同的等于比较,必须重写equals方法。
“==”比”equal”运行速度快,因为”==”只是比较引用。
语句解析:String s=null;(建立一个s的对象,但对象未指向任何引用)
String s=”“;(建立一个s的对象,但是这个对象指向(“”)一个空的字符串的引用)
如果String s=null;之后再进行判断:1.s==null这个返回true, 2.s==”“这个返回false , 3.s.equals(“”)这里会抛出异常,因为equals是对s这个对象指向的引用做的判断,而s赋值时是没有指向任何引用的。
如果String s=“”;之后再进行判断:1.s==null这个返回false, 2.s==”“这个返回true,3.sequals(“”)这里true
和内存分配相联系来判断即可,在判断String是否相等的时候建议用equals。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值