java之旅(5)基本概念(下)

测试对象的相等性:虽然==和!=能用于所有对象,但得出的结果却未必是你想要的。除了原始数据类型外,
==和!=用在两个对象间都比较的是两个对象的reference,而我们一般要比较的却是对象的内容,我们可以
使用equals()方法,但该方法在object基类缺省行为还是比较对象的reference,所以在比较自己创建的类的对象
时,应该自己实现该方法。好在绝大多数java类库的类都实现了该方法,我们只管用就好了。

短接,位运算符,移位运算符,三元运算符( ? :),逗号运算符(java里只有在FOR循环里有应用),string
的+运算符(自动转换后相加)。

常见的使用运算符中的错误:while( x = y) {//do something},哦,在c++里会不小心犯的错误,java里却不会
出现,因为java里的boolean 是false和true,而不是0 和非0;

类型转换:宽位值转换为窄位值时,java要求你进行明确的显示转换否则产生异常,因此避免了意外出错。

java没有sizeof(),曾经在《c++高质量编程》里被大段讲过的东西终于一下子被咔喳了,真爽。

控制语句:if else; for ; while ; do while;  for (只有for语句才有在“控制表达式”里定义变量的能力,千万别在
其他选择语句或循环语句里这么做。虽然可以定义变量,但也只能是同一个类型而已); break (跳出当前循环)
; continue(立即进入下一轮循环); while(true)==for(;;) ; switch case;

goto后来者:C++程序员在编程时因为担心goto的副作用,都很谨慎的使用它,或者干脆不用,但有时它也会有
很好的效果在适当的地方,(不过我至今还没用到)java终于摒弃了这把双刃剑,同时提供了另一个类似的功能
的东东,以便能在适当的地方起些适当的作用。label.
///
label1:
outer-iteration
{
 inner-iteration
 {
  //......
  break; //案例1
  //......
  continue; //案例2
  //......
  continue label1; //案例3
  //......
  break label1; //案例4
  //......
 }
}
/
在案例1中break中断了内部循环,退到了外部循环。案例2中continue仍在内部循环。案例3中continue到label1
处,重新开始循环。案例4退到label1处,但是这次再不进入循环了(不可思议)。

以上规则同样适用于while循环。

ok,今天到这里,明天学习隐藏实现,对象的初始化和清理。


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值