JAVAの変数や配列の型を他の型に変えたり(キャスト)自動に変わったりする様子を実験
byte short int long float double boolean char
大きい箱に小さい箱は入るけど、//自動で型を変えてるようで
小さい箱に大きい箱は入らないと同じ現象になりました。
どうしても、
小さい箱に大きい箱を入れたい時は、
大きい箱を小さい箱に合わせると入るようです。
kora = (byte)mate; これでshort型をbyte型に変換してbyte型のkoraに代入できる
これをキャストと呼ぶようです。
class Test{ public static void main(String[] args) { byte kora = 1; //1バイト整数(-128〜127) short mate = 4; //2バイト整数(-32768〜32767) int nori = 6; //4バイト整数(-2147483648〜2147483647) long naga = 17; //8バイト整数(-9223372036854775808〜9223372036854775807) float furo4 = 24.2F; //4バイト単精度浮動小数点 末尾にF double furo8 = 242.14; //8バイト倍精度浮動小数点 kora = (byte)mate; //(byte)でキャストしないとエラー mate = kora; //キャストでkoraが4になりmateに4が代入 nori = (int)furo4; System.out.println("koraは"+ kora); System.out.println("mateは"+ mate); //intにキャストしてint変数に代入すると小数点以下は切り捨て System.out.println("noriは"+ nori); } }