谁能帮我这个菜鸟的忙啊
我到现在还搞不懂 那些类型的转换 就是那些 long int short byte char float double 之间的转换 搞的我迷糊了 --------------------编程问答-------------------- short byte char 这3种 运算的时候都是转换成int,所以比如:char ch1 = 'a';
char ch2 = 'b';
char ch3 = ch1 + ch2;//这句存在编译错误,不能把ch1 + ch2的结果int型的赋值给char的
int long float double//运算的时候,是小的自动转换成大的,比如 int + long 结果就是long
我也是新手 --------------------编程问答-------------------- 哪儿转化糊涂了?你举个例子、、这种问题在遇到的时候还是要多看API. --------------------编程问答-------------------- 不要太心急了,多看看例子。 --------------------编程问答-------------------- 你可以了解以下这些基本数据类型的存储范围,小的转换到大的就不用强制类型转换,就像一个小盒子放进一个大盒子里,很容易就放进去了,但是范围大的转换为小的就要进行强制类型转换,因为把大盒子放进小盒子里就要进行一些强制性处理,就不是那么简单! --------------------编程问答-------------------- class TestDemo
{
public static void main(String[] args)
{
/*数据类型自动提升:*/
//1.所有的byte型、short型和char型的值将被提升到int型。
byte a = 1;
short b = 2;
char c = '3';
int d = 4;
d = a+b+c;//首先将a,b转换成int型,然后进行+运算,所以最后结果为int型
short e = (short)(a+b+c); //如果将a+b+c的值赋给比int型小的类型,必须手动进行强制转换
//2.如果一个操作数是long型,计算结果就是long型;
int a1 = 4;
long b1 = 8;
long c1 = a1 + b1;
int d1 = (int)(a1 + b1);
//3.如果一个操作数是float型,计算结果就是float型;
//4.如果一个操作数是double型,计算结果就是double型。
/*出现数字时*/
float f = 4.0f;//需要加上f标记,因为它会将4.0默认为double类型,
double dou = 4.0;
}
} --------------------编程问答--------------------
--------------------编程问答-------------------- 我全部都用double 来表示可以不
class TestDemo
{
public static void main(String[] args)
{
/*数据类型自动提升:*/
//1.所有的byte型、short型和char型的值将被提升到int型。
byte a = 1;
short b = 2;
char c = '3';
int d = 4;
d = a+b+c;//首先将a,b转换成int型,然后进行+运算,所以最后结果为int型
short e = (short)(a+b+c); //如果将a+b+c的值赋给比int型小的类型,必须手动进行强制转换
//2.如果一个操作数是long型,计算结果就是long型;
int a1 = 4;
long b1 = 8;
long c1 = a1 + b1;
int d1 = (int)(a1 + b1);
//3.如果一个操作数是float型,计算结果就是float型;
//4.如果一个操作数是double型,计算结果就是double型。
/*出现数字时*/
float f = 4.0f;//需要加上f标记,因为它会将4.0默认为double类型,
double dou = 4.0;
}
}
补充:Java , Java相关