【Java中的byte类型及用if-else对三个数排序】
2013-08-29 14:42
225 查看
1、byte类型是Java的基本数据类型,占一个字节,2^8,表数范围:-128~127
[java]
public class TestByte {
public static void main(String[] args) {
byte b1 = 1;
b1++;
b1 = b1 + 1;
}
}
编译番茄花园xp系统下载时出现以下错误:
TestByte.java:5: 错误: 可能损失精度
b1 = b1 + 1;
^
需要: byte
找到: int
1 个错误
是因为 b1 + 1 中的常量 1 是默认为一个 int 类型数据,相加结果不能赋给 byte 类型
[java]
byte b1 = 1;
byte b2 = 1;
byte b3 = 1 + 1;
byte b4 = b1 + b2; //可以改为byte b4 = (byte)(b1 + b2)
编译时第 4 行还是出现同样的问题,因为 byte 在计算时首先要转换为 int 类型,其结果也不能赋给 byte 类型。
[java]
public class TestByte {
public static void main(String[] args) {
byte b1 = 1;
b1++;
b1 = b1 + 1;
}
}
编译番茄花园xp系统下载时出现以下错误:
TestByte.java:5: 错误: 可能损失精度
b1 = b1 + 1;
^
需要: byte
找到: int
1 个错误
是因为 b1 + 1 中的常量 1 是默认为一个 int 类型数据,相加结果不能赋给 byte 类型
[java]
byte b1 = 1;
byte b2 = 1;
byte b3 = 1 + 1;
byte b4 = b1 + b2; //可以改为byte b4 = (byte)(b1 + b2)
编译时第 4 行还是出现同样的问题,因为 byte 在计算时首先要转换为 int 类型,其结果也不能赋给 byte 类型。
相关文章推荐
- Java中的byte类型及用if-else对三个数排序
- Java中String类型和Byte类型的互换问题
- Java编程细节-重构-为什么 if-else 不是好代码
- Java中涉及byte、short和char类型的运算操作
- java中if-else为什么比switch效率低
- Java 字节数组类型(byte[])与int类型互转
- Java中byte类型变量做& 0xff运算的理解
- java基础类型中的char和byte的辨析及Unicode编码和UTF-8的区别
- 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。Java实现
- C的无符号数据类型int,short,byte 转为 Java对应的数据long,char,short
- 《黑马程序员》java笔记->基本数据类型包装类及自动拆箱装箱原理,数组排序练习字符串切割
- JAVA编程思想---基本数据类型总结(byte,char)
- java例程练习(对象类型数据的排序)
- 编写一个Java程序,用if-else语句判断某年份是否为闰年。
- 你真正理解java的字符类型了吗?(bit,byte,short,int等字符类型)
- byte,short,char三种类型在Java中是表象
- Java中byte基础类型的特殊性
- 为什么Java byte类型的取值范围为-128~127
- java 中2个字节(byte)拼成 short 类型 4000 的值
- java4Android(5)分支语句-if...else...判断语句