一、代码细节问题
刘力(402149997)
public static String formatDate(Date date){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println(date);
return sdf.format(date);
}
陈聚雄(457972538)
import java.util.Date;
import java.text.*;
public class Test{
public static void main(String[] args){
Date d = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(sdf.format(d));
}
}
刘力(402149997)
yyyy-MM-dd hh:mm:ss
这里不同 为什么呢
陈聚雄(457972538)
hh指的可能是12小时制。HH指24小时制。
二、原码,补码,反码
浩为-admin(914529681)
原码是机器数的一种简单的表示法。数值在计算机中表示形式为机器数,计算机只能识别0和1,使用二进制,但日常生活中使用十进制。数值有正负之分,计算机用一个数的最高位存放符号(0为正,1为负)。
假设机器能处理的位数为8,即字长为1字节,原码能表示数值的范围为(-127~-0 +0~127)共256个。 这是共享文件 d原码、反码、补码.doc 的部分内容 有了数值的表示方法就可以对数进行算术运算,当两数相加时,如果同号则数值相加;如果异号,则要进行减法。并且在进行减法时需要比较绝对值的大小,然后大数减去小数,最后还要给结果选择符号。
为了解决这些矛盾,人们找到了补码表示法,即数值一律用补码来表示(存储)。机器数的补码可由原码得到。如果机器数是正数,则该机器数的补码与原码一样;如果机器数是负数,则该机器数的补码是对它的原码(除符号位外)各位取反,并在未位加1而得到。
在补码中用(-128)代替了(-0),所以补码的表示范围为:(-128~0~127)共256个。
注意:(-128)没有相对应的原码和反码,(-128) = (10000000)。
对除符号位外的其余各位逐位取反就产生了反码(对于正数,其反码与原码相同)。反码的取值空间和原码相同且一一对应。
负数用补码表示时,可以把减法转化为加法。这样,在计算机中实现起来就很方便。
补码的原理可以用钟表来描述:如设标准时间为4点正;一只表已经7点了,为了校准时间,可以采用两种方法:一是将时针退 7-4=3 格;一是将时针向前拨12-3=9格。即7-3和7+9(mod12)等价,因此,把负数用补码表示的mod2操作,可以把减法转化为加法。使用补码,可以将符号位和其它位统一处理;同时,减法也可按加法来处理。另外,两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃。 这是对d专题注意byte与int的转换.doc 的补充,此文件以后还会修改,争取一看就能明白原理
public class D10415Byte {
public static void main(String[] args) {
byte a=-128;
byte b=89; System.out.println((byte)(a+b));
printBinaryInt(a);
printBinaryInt(b);
printBinaryInt((byte)(a+b)); a=-100;
b=(byte)128;//不能直接赋值为128,否则报错,注意byte范围(-128~0~127)
System.out.println((byte)(a+b)); printBinaryInt(a);
printBinaryInt(b);
printBinaryInt((byte)(a+b)); }
static void printBinaryInt(int i) {
System.out.print("" + i + ",/tbinary:/t");
for (int j = 31; j >= 0; j--)
if (((1 << j) & i) != 0)
System.out.print("1");
else
System.out.print("0"); System.out.println(); }}
执行结果如下:-39-128,
binary: 1111111111111111111111111000000089,
binary: 00000000000000000000000001011001-39,
binary: 1111111111111111111111111101100128-100,
binary: 11111111111111111111111110011100-128, binary: 1111111111111111111111111000000028,
binary: 00000000000000000000000000011100
可加深对 4.9 计算机基础:原码、反码、补码的理解
以上由管理员赵博伟整理
本书不少篇章已经超出了技术的范畴,上升到人生发展的高度,这也是副标题叫“人生需要引导” 的一个原因。加入QQ群78928780,每周一个学习安排,多个学习小组等着你,还可分享各种根据聊天记录整理的话题哟。
《数据库开发这点事》下载地址http://sites.google.com/site/howwe6/db