Tips

Java Silver 練習問題28

Java Silver 練習問題28

Java Silverに関する問題を出題していきます!

 

問題1
次のプログラムをコンパイル、実行した結果として正しいものはどれか。

[java] public class Practice28_Q1 {
public static void main(String[] args) {
double d = 1.234;
int i = (int) d;
d = i;
System.out.println(d);
}
}
[/java]
  1. 「1.234」と表示
  2. 「1」と表示
  3. 「1.0」と表示
  4. コンパイルエラー
  5. 実行時エラー
解答はここをクリック!

【解答 3:「1.0」と表示】

4行目で1.234をint型にキャストするした際に既に小数部は切り捨てられていまっています。
したがっでいくらもう一度double型に戻したからといって「1.234」に戻ることはありません。

 

 

問題2

次のプログラムをコンパイル、実行した結果として正しいものはどれか。

[java] public class Practice28_Q2 {
public static void main(String[] args) {
int i = 128;
System.out.println((byte)i);
}
}
[/java]
  1. 「128」と表示
  2. 「127」と表示
  3. コンパイルエラー
  4. 実行時エラー
  5. 1~4以外
解答はここをクリック!

【解答 5:1~4以外】

この場合「-128」と表示されます。
ポイントはbyte型です。
byteで表すことができるのは-128~127の数です。
1byteは8ビットです。
8ビットのうち一番左のビットが正負、残り7ビットが数を表現する箇所となっています。
128は2進数で表すと「10000000」になります。
これが内部では「-128」として処理されています。

 

 

問題3

次のプログラムをコンパイル、実行した結果として正しいものはどれか。

[java] public class Practice28_Q3 {
public static void main(String[] args) {
int i = 10;
String str = (String)i;
System.out.println(str);
}
}
[/java]
  1. 「10」と表示
  2. 何も表示されない
  3. コンパイルエラー
  4. 実行時エラー
  5. 1~4以外
解答はここをクリック!

【解答 3:コンパイルエラー】

基本データ型をオブジェクトString型にキャストすることはできません。

 

 

問題4

次のプログラムをコンパイル、実行した結果として正しいものはどれか。

[java] public class Practice28_Q4 {
public static void main(String[] args) {
int i = 10;
String str = new String(i);
System.out.println(str);
}
}
[/java]
  1. 「10」と表示
  2. 何も表示されない
  3. コンパイルエラー
  4. 実行時エラー
  5. 1~4以外
解答はここをクリック!

【解答 3:コンパイルエラー】

Stringクラスのコンストラクタにint型を渡すことはできません。

 

 

問題5

次のプログラムをコンパイル、実行した結果として正しいものはどれか。

[java] public class Practice28_Q5 {
public static void main(String[] args) {
int i = 10;
String str = String.valueOf(i);
System.out.println(str);
}
}
[/java]
  1. 「10」と表示
  2. 何も表示されない
  3. コンパイルエラー
  4. 実行時エラー
  5. 1~4以外
解答はここをクリック!

【解答 1:「10」と表示】

StringクラスにはvalueOfメソッドというstaticメソッドが用意されています。
このメソッドの引数に基本データ型の値を渡すとString型に変換することができます。

 


前回の問題

新連載はじまりました!新Java基礎 連載リンク

はじめてのJAVA 連載

Recent News

Recent Tips

Tag Search