您的位置:首页 > 编程语言 > Java开发

Java每日解惑

2016-01-11 00:07 495 查看
package jinlai.ding.com.javajiehuo;

import java.math.BigDecimal;

public class IsOld {

/**
* 判断奇数((计算一个数字是否奇数))
* @param args
*/
public static void main(String[] args) {
//谜题1:奇数性
System.out.println(isOld(-3));
System.out.println(isOldYes(-3));
//谜题2:找零时刻
System.out.println(2.00 - 1.10);
System.out.println((200 - 110) + "cents");
System.out.println(new BigDecimal("2.00").subtract(new BigDecimal("1.10")));
//谜题3:长整数
System.out.println(longDivision());
System.out.println(longDivisionL());
//谜题4:初级问题
System.out.println(12345 + 54321);
System.out.println(12345 + 5432l);
System.out.println(12345 + 5432L);
//谜题5:十六进制的趣事
System.out.println(Long.toHexString(0x100000000L + 0xcafebabe));
System.out.println(Long.toHexString(0x100000000L + 0xcafebabeL));

}

/**
* 错误的判断方法
* @param i
* @return
*/
public static boolean isOld(int i){
return i % 2 ==1;
}

/**
* 正确的判断方法
* @param i
* @return
*/
public static boolean isOldYes(int i){
return (i & 1) != 0;
}
/**
* 微妙除以毫秒 溢出计算
* @return
*/
public static long longDivision(){
final long MICROS_PER_DAY = 24 * 60 * 60 * 1000 * 1000;
final long MILLIS_PER_DAY = 24 * 60 * 60 * 1000;
return MICROS_PER_DAY / MILLIS_PER_DAY;
}
/**
* 微妙除以毫秒 不溢出计算
* @return
*/
public static long longDivisionL(){
final long MICROS_PER_DAY = 24L * 60 * 60 * 1000 * 1000;
final long MILLIS_PER_DAY = 24L * 60 * 60 * 1000;
return MICROS_PER_DAY / MILLIS_PER_DAY;
}

}


View Code
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: