JAva言語ベース(8)-データ型変換(デフォルト変換と強制変換)
1201 ワード
一般的に、演算に参加するデータのタイプは一致しなければならない.これは私たちが1+1で演算することができて、1+aで演算することができなくて、javaの中でもっと厳しくて、同じ数値の数字はbyte short int longの4つの異なるタイプがあって、それは演算の時にもタイプが一致することを要求して、一致しなければ、今日お話しするタイプ変換についてお話しします.
デフォルトの変換:
デフォルトの変換順序(小から大へ、上へ):
byte short char ->int->long->double
byte short char演算時にintに変換し、演算中にlongタイプがあれば結果はlongタイプ、doubleタイプ、結果はdoubleタイプである.
byte short charは互いに変換されず、演算時にintタイプに変換されます.
強制変換(大から小へ、下へ):
書式設定 ターゲットデータ型 変数=(ターゲットデータ型)データ;
デフォルトの変換:
class TypeConvert
{
public static void main(String[] args){
//
int a = 1;
int b = 2;
System.out.println(a+b);
// c+d=3 byte
// byte , 。
// e byte , byte c int c
// e int , int
byte c = 1;
int d = 2;
//byte e = c+d; int byte
int e = c+d;
System.out.println(e);
// byte byte int
byte x = 1;
byte y = 2;
//byte z = x+y;
int z = x+y;
System.out.println(z);
}
}
デフォルトの変換順序(小から大へ、上へ):
byte short char ->int->long->double
byte short char演算時にintに変換し、演算中にlongタイプがあれば結果はlongタイプ、doubleタイプ、結果はdoubleタイプである.
byte short charは互いに変換されず、演算時にintタイプに変換されます.
強制変換(大から小へ、下へ):
書式設定 ターゲットデータ型 変数=(ターゲットデータ型)データ;
class TypeConvert
{
public static void main(String[] args){
byte a = 1;
byte b = 2;
//
byte c = (byte)(a+b);
System.out.println(c);
}
}