1 下面的程序可以达到目标吗?
public static boolean isOdd(int i){
return i % 2 == 1;
}
结果:当 i 是负数的时候会出问题,如-5%2 == -1 。改进方法
public static boolean isOdd(int i){
return i % 2 != 0;
}
性能优化
public static boolean isOdd(int i){
return (i & 1) != 0;
}
2public class Change{
public static main(String args[]){
system.out.println(2.00-1.10);
}
}
如果我们需要得到精确的结果即 0.90 给程序能够满足要求吗? 当然答案是否定的。 在需要精确答案的地方要避免使用
floate double 类型 而要使用int ,long(换成小型数据类型计算 本题可以换成分来计算 如 system.out.println( 200-110)+cents;) 或是使用bigDecimal();
1. 类继承与接口继承的比较
理解对象的类( c l a s s )与对象的类型( t y p e )之间的差别非常重要。
一个对象的类定义了对象是怎样实现的,同时也定义了对象的内部状态和操作的实现。
但是对象的类型只与它的接口有关,接口即对象能响应的请求的集合。
2委托模式(d e l e g a t i o n))
下面的图显示了窗口类将它的A r e a操作委托给一个矩形实例。
委托的主要优点在于它便于运行时刻组合对象操作以及改变这些操作的组合方式。假定
矩形对象和圆对象有相同的类型,我们只需简单的用圆对象替换矩形对象,则得到的窗口就
是圆形的。