byte类型为什么不能自动转换为char类型 自动类型转换charbyte 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 java基本数据类型分三种:字符char,布尔boolean,数值(整形,浮点型),其中数值类型的都是有符号的,但char是没有符号的,范围0-2^16-1,可能就是这个原因导致byte不能直接转换为char。另外,byte可以自动转换为short型,似乎也说明了这一点。。 在李刚所著《Java疯狂讲义》48页中写到:基本类型包括boolean类型和数值类型。数值类型有整数类型和浮点型。整数类型包括byte,short,int,long,char。浮点类型包括float和double。提示中标注:有的时候也把char类型称为字符型,实际上字符型也是一种整数类型。我可能过多的想到字符型也是一种整数类型这句话了。朋友提到的符号之分,我觉得是对的。 符号是关键。对于byte来说,第一位是符号位。如果是byte b = -1;那么转换用char是无法表示的,因为char是无符号的。 不是符号的问题。转换必须是同性质的类型之间。整形,浮点型,都是数值。字符是有字符集的,这种转换在事务上没有意义。java语言设计的目标是做项目,而不是玩技术。 在李刚所著《Java疯狂讲义》48页中写到:基本类型包括boolean类型和数值类型。数值类型有整数类型和浮点型。整数类型包括byte,short,int,long,char。浮点类型包括float和double。提示中标注:有的时候也把char类型称为字符型,实际上字符型也是一种整数类型。请注意提示中的说明,char类型实际上是整形的一种类型,char能自动转换成int也说明了这个问题。所以byte不能转换为char类型应该是符号问题。至于项目重要,还是技术重要,不在讨论范围之内。 在李刚所著《Java疯狂讲义》48页中写到:基本类型包括boolean类型和数值类型。数值类型有整数类型和浮点型。整数类型包括byte,short,int,long,char。浮点类型包括float和double。提示中标注:有的时候也把char类型称为字符型,实际上字符型也是一种整数类型。请注意提示中的说明,char类型实际上是整形的一种类型,char能自动转换成int也说明了这个问题。所以byte不能转换为char类型应该是符号问题。至于项目重要,还是技术重要,不在讨论范围之内。从技术上讲是这样的。李刚去讲C++比较合适,这样只从技术层面讲java,会抹掉java的灵魂。《Java编程思想》指出要从字符、布尔、数值、原始二进制数据的角度理解java对基本类型的设计意图。byte是原始二进制数据,一个字节,8个位。byte不一定是整数,完全可能是一个浮点数的一部分。《Java编程思想》指出byte转成别的要根据事务,否则...... 从技术上讲是这样的。李刚去讲C++比较合适,这样只从技术层面讲java,会抹掉java的灵魂。《Java编程思想》指出要从字符、布尔、数值、原始二进制数据的角度理解java对基本类型的设计意图。byte是原始二进制数据,一个字节,8个位。byte不一定是整数,完全可能是一个浮点数的一部分。《Java编程思想》指出byte转成别的要根据事务,否则......作为菜鸟,我会读到《Java编程思想》和《JVM虚拟机》的,谢谢想问一下,Java的多维数组,最多能表示多少维呢? 作为菜鸟,我会读到《Java编程思想》和《JVM虚拟机》的,谢谢想问一下,Java的多维数组,最多能表示多少维呢?远超出内存大小。byte[] bs = new byte[1000*1000*1000*100];会抛出内存不足的异常。 远超出内存大小。byte[] bs = new byte[1000*1000*1000*100];会抛出内存不足的异常。不好意思,最近刚工作,有点忙,这么长时间才回你的帖子。我想问的是:能表示多少维的数组,而不是数组的最大空间。在C,C++中会根据硬件的不同而有不同表现。但是考虑到Java是跨平台的,这些应该是一定的。比如常用的int类型可以表示多少维,255维?那么最小的byte呢?用那种方式可以计算得出呢? byte 是有符号的 char 是0-65535 的无符号整数 Java中byte、short、char三种类型的优先级是相同的,相同优先级之间是不能进行自动转换的,只能将低类型自动转换为高类型 在JSL5.1.4中: Widening and Narrowing Primitive Conversions中涉及到了byte to char解释:First, the byte is converted to an int via widening primitive conversion, and then the resulting int is converted to a char by narrowing primitive conversion. btye只能是 127到-128,char可就大了....不能自动转,不过你手动可以转啊.char[] ch = "abcde".toCharArray(); if (ch[0] >= 'a' && ch[0] <= 'z') { ch[0] = (char) (ch[0] - 32); }相加减都可以的,但是不能超过byte. 有谁熟悉Swing的同步问题? java问题求救 请问 如何取得789这个数 请问窗体改变大小的时候会触发什么事件啊 100分求Together Control Center 6.2的注册机或注册码!经验证可用立即给分!! 初学:用什么函数输出鼠标位置的坐标? jtable单元格问题,散分 jtable怎样指定某个单元格而CellRenderer jbuilder怎么和J2SDK一起使用 大家探讨一下JAVA打印!!!!!!!!!来者有分! Java最最基础的问题,在线求助 java writeint() ?
基本类型包括boolean类型和数值类型。数值类型有整数类型和浮点型。整数类型包括byte,short,int,long,char。浮点类型包括float和double。
提示中标注:有的时候也把char类型称为字符型,实际上字符型也是一种整数类型。
我可能过多的想到字符型也是一种整数类型这句话了。朋友提到的符号之分,我觉得是对的。
符号是关键。对于byte来说,第一位是符号位。如果是byte b = -1;那么转换用char是无法表示的,因为char是无符号的。
基本类型包括boolean类型和数值类型。数值类型有整数类型和浮点型。整数类型包括byte,short,int,long,char。浮点类型包括float和double。
提示中标注:有的时候也把char类型称为字符型,实际上字符型也是一种整数类型。
请注意提示中的说明,char类型实际上是整形的一种类型,char能自动转换成int也说明了这个问题。所以byte不能转换为char类型应该是符号问题。
至于项目重要,还是技术重要,不在讨论范围之内。
基本类型包括boolean类型和数值类型。数值类型有整数类型和浮点型。整数类型包括byte,short,int,long,char。浮点类型包括float和double。
提示中标注:有的时候也把char类型称为字符型,实际上字符型也是一种整数类型。
请注意提示中的说明,char类型实际上是整形的一种类型,char能自动转换成int也说明了这个问题。所以byte不能转换为char类型应该是符号问题。
至于项目重要,还是技术重要,不在讨论范围之内。
从技术上讲是这样的。李刚去讲C++比较合适,这样只从技术层面讲java,会抹掉java的灵魂。《Java编程思想》指出要从字符、布尔、数值、原始二进制数据的角度理解java对基本类型的设计意图。
byte是原始二进制数据,一个字节,8个位。byte不一定是整数,完全可能是一个浮点数的一部分。《Java编程思想》指出byte转成别的要根据事务,否则......
byte是原始二进制数据,一个字节,8个位。byte不一定是整数,完全可能是一个浮点数的一部分。《Java编程思想》指出byte转成别的要根据事务,否则......
作为菜鸟,我会读到《Java编程思想》和《JVM虚拟机》的,谢谢
想问一下,Java的多维数组,最多能表示多少维呢?
想问一下,Java的多维数组,最多能表示多少维呢?
远超出内存大小。
byte[] bs = new byte[1000*1000*1000*100];
会抛出内存不足的异常。
byte[] bs = new byte[1000*1000*1000*100];
会抛出内存不足的异常。
不好意思,最近刚工作,有点忙,这么长时间才回你的帖子。
我想问的是:能表示多少维的数组,而不是数组的最大空间。在C,C++中会根据硬件的不同而有不同表现。但是考虑到Java是跨平台的,这些应该是一定的。
比如常用的int类型可以表示多少维,255维?那么最小的byte呢?用那种方式可以计算得出呢?
char 是0-65535 的无符号整数
char可就大了....不能自动转,
不过你手动可以转啊.char[] ch = "abcde".toCharArray();
if (ch[0] >= 'a' && ch[0] <= 'z') {
ch[0] = (char) (ch[0] - 32);
}
相加减都可以的,但是不能超过byte.