Java | 数値リテラルとサフィックスの基礎

Java Java
スポンサーリンク

では、Javaの数値リテラルに関する 練習問題10問 です。回答と解説も付けます。
初心者向けに、実際に手を動かして学べる内容にしています。


練習問題10問

問題1

次の整数リテラルのうち、コンパイルエラーになるものはどれですか?

int a = 100;
int b = 2147483648;
long c = 2147483648L;
Java

問題2

次のコードのうち、正しく float 型に代入できるのはどれですか?

float a = 3.14;
float b = 3.14F;
float c = 2.71f;
Java

問題3

long 型に 5,000,000,000 を代入する正しい書き方は?


問題4

次のうち、整数リテラルとして正しいものは?

  1. 0b1010
  2. 0123
  3. 1234L
  4. 1234.0

問題5

次のコードを修正して float 型に代入できるようにしてください。

float pi = 3.14159265;
Java

問題6

double 型の変数 d に 7.89 を代入する場合、末尾に何を付ける必要がありますか?


問題7

次のコードの出力はどうなりますか?

float f = 1.2345678F;
double d = 1.23456789012345;
System.out.println(f);
System.out.println(d);
Java

問題8

次のうち long 型として扱う必要があるのはどれですか?

  1. 100
  2. 2147483647
  3. 2147483648

問題9

次のコードの間違いを直してください。

int x = 3000000000;
float y = 12.34;
Java

問題10

float 型と double 型の違いを簡単に説明してください。


🔹 回答と解説

問題1

  • 答え: int b = 2147483648; がエラー
  • 解説: int 型の最大値は 2,147,483,647。超える数は long 型(末尾に L)にする必要があります。

問題2

  • 答え: bc
  • 解説: float 型は末尾に F または f を付けないと代入できません。a はエラー。

問題3

long num = 5000000000L;
Java
  • 解説: 5000000000int の範囲を超えるので L を付けて long 型にします。

問題4

  • 答え: 1, 2, 3
  • 解説:
    • 0b1010 → 2進数表記
    • 0123 → 8進数表記
    • 1234L → long型
    • 1234.0 → 小数なので整数リテラルではない

問題5

float pi = 3.14159265F;
Java
  • 解説: float 型は小数点を末尾に F または f を付ける必要があります。

問題6

  • 答え: 末尾に何も付けなくてOK(デフォルトで double 型)
  • 解説: 小数リテラルは double がデフォルトです。

問題7

1.2345678
1.23456789012345
Java
  • 解説: float は小数点以下 7 桁程度まで精度を保てます。double は 15 桁程度。

問題8

  • 答え: 3 (2147483648)
  • 解説: 2,147,483,648 は int の範囲を超えるため long 型にする必要があります。

問題9

long x = 3000000000L;
float y = 12.34F;
Java
  • 解説:
    • 3000000000 → int の範囲を超えるため L を付ける
    • 12.34 → float 型には F が必要

問題10

  • 答え例:
    • float → 小数点以下約7桁の精度
    • double → 小数点以下約15桁の精度
  • 解説: double の方が精度が高く、大きな小数や計算に向いています。

タイトルとURLをコピーしました