A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

byte  1个字节,8位。取值是-127~+128。也就是-2^7~+2^7-1。最高位是有个符号位吗?什么情况下用byte呢?感觉不常用呢啊?
char 占2个字节,16位,为什么要分配2个字节呢?一个字节不够吗?char就没有负数了,char ch=97  那么是a,如果char ch=-97会怎么样呢?

2 个回复

倒序浏览
本帖最后由 sharplance 于 2015-10-22 15:37 编辑

byte 类型的最高位是符号位,为 0  时是整数,1 时是负数,整型包含有符号和无符号整型,无符号整型是非负数,最高位不用做符号位,因此正数的范围要大一些;我印象中字符串的方法中有与 byte 数组相关的;汉字要用到两个字节;我刚刚在 Eclipse 里试了 char ch=-97,直接报错,提示无法转换。
回复 使用道具 举报
char的取值范围是0-2^16次,没有负数。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马