検索

ホームページ  >  に質問  >  本文

java中整数数值默认是int类型,这句话正确吗?

比如byte b = 1; char c = 1;,如果整数类型默认是int类型的话,那么byte b = 1;应该需要强转换才对,因为int是高精度的,但这里明显不报错,这是为什们呢?

高洛峰高洛峰2807日前1088

全員に返信(5)返信します

  • 迷茫

    迷茫2017-04-18 10:53:57

    まず、整数型のデフォルトは int です。これについては疑いの余地がありません。
    次に、許可される型の範囲内で、ここではバイト: -128~127 です。
    整数 int 1 がこの範囲内にある場合、コンパイラーは自動的に定数の下位変換を実行します。
    定数がこの範囲を超える場合、コンパイラは直接エラーを報告します。

    返事
    0
  • 天蓬老师

    天蓬老师2017-04-18 10:53:57

    Byte、short、char、boolean はすべて最下層で int として処理されます

    返事
    0
  • 天蓬老师

    天蓬老师2017-04-18 10:53:57

    間違っています。2 つの整数が int 以下の場合、デフォルトは int になります。

    2 つのバイト変数を宣言し、それらを追加して別のバイト変数に割り当てようとすると、コンパイラによってエラーが表示され、強制的な型変換が必要になります。

    返事
    0
  • PHP中文网

    PHP中文网2017-04-18 10:53:57

    この記事をチェックしてください: http://www.programgo.com/arti...

    返事
    0
  • 阿神

    阿神2017-04-18 10:53:57

    自動変換と強制変換に分かれます

    返事
    0
  • キャンセル返事