練習問題
9.8 練習問題
本章で習った内容を元に練習問題を解いてください。
問1 次の設問①~⑤について○か×で答えなさい。
設問
① Javaには色々な機能を持ったクラスがたくさん提供されている。
② クラスはメソッドの引数や戻り値の型として定義できない。
③ クラス型の変数はメソッドの引数や戻り値に利用できる。
④ クラス型変数同士の代入は別々のオブジェクトとしてコピーされる。
⑤ クラス型の配列は可変長の配列になる。
問2 次の設問①~⑤に使用するStringクラスのメソッドを選択肢候補より選んで答えなさい。
選択肢
equals substring length charAt split
設問
① 文字列から任意の1文字を取得する。
② 文字列を指定のキーワードで分割して取得する。
③ 文字列型同士の比較を行う。
④ 文字列から任意の長さで文字列を分割して取得する。
⑤ 文字列の長さを取得する。
問3 以下に示すソースコードPractice0901.javaを実行した場合、実行結果の空白①~⑧に入る本のタイトルと価格をそれぞれ答えなさい。
実行結果

① ソース・フォルダー: myproj_basic/src
② パッケージ: jp.co.f1.basic.ch09exercise
③ 名前: Books
① ソース・フォルダー: myproj_basic/src
② パッケージ: jp.co.f1.basic.ch09exercise
③ 名前: Practice0901
④ 作成するメソッド・スタブの選択:public static void main(String[] args) にチェックを入れる
ソースコード
Books.java
1 | package jp.co.f1.basic.ch09exercise; |
8 | public Books(String title, int price){ |
14 | public void setBookInfo(String title, int price){ |
20 | public void showBookInfo(){ |
21 | System.out.println( "この本のタイトルは「" + this .title + "」です。" ); |
22 | System.out.println( "この本の価格は「" + this .price + "」円です。" ); |
23 | System.out.println( "-------------------------------------------" ); |
Practice0901.java
1 | package jp.co.f1.basic.ch09exercise; |
3 | public class Practice0901 { |
4 | public static void main(String[] args) { |
5 | System.out.println( "-------------------------------------------" ); |
6 | Books book1 = new Books( "Java入門" , 2980 ); |
9 | book1 = new Books( "Java基礎" , 1500 ); |
14 | book2.setBookInfo( "Java入門基礎" , 3200 ); |
問4 以下に示すPractice0902.javaのソースコードを、Booksオブジェクト配列を利用した内容のPractice0903.javaを作成しなさい。
作成ヒント
①Booksオブジェクト配列を要素数「5」で定義します。
②繰り返し文を利用しBooksオブジェクト配列に、各要素にオブジェクトを生成して代入します。
③繰り返し文を利用しBooksオブジェクト配列の、各要素からshowBookInfoメソッドを呼び出します。
ソースコード
① ソース・フォルダー: myproj_basic/src
② パッケージ: jp.co.f1.basic.ch09exercise
③ 名前: Practice0902
④ 作成するメソッド・スタブの選択:public static void main(String[] args) にチェックを入れる

問5 Practice0904.javaのソースコードを、以下の変更仕様に基づいたPractice0905.javaを作成しなさい。
変更仕様
①mainメソッドの点数格納用配列を、通常のint配列から整数値を扱うArrayList配列に変更する。
②①の変更に合わせてmainメソッド処理内部を、ArrayList配列を利用した方法に変更する。
③showSumScoreメソッドの引数の型を、ArrayListに変更する。
④③の変更に合わせてshowSumScoreメソッド処理内部を、ArrayList配列を利用した方法に変更する。
ソースコード
① ソース・フォルダー: myproj_basic/src
② パッケージ: jp.co.f1.basic.ch09exercise
③ 名前: Practice0904
④ 作成するメソッド・スタブの選択:public static void main(String[] args) にチェックを入れる
1 | package jp.co.f1.basic.ch09exercise; |
3 | import java.util.InputMismatchException; |
4 | import java.util.Scanner; |
6 | public class Practice0904 { |
11 | public static void showSumScore( int [] score){ |
13 | for ( int i= 0 ;i<score.length;i++){ |
14 | System.out.println((i+ 1 )+ "人目の点数は「" + score[i] + "」です。" ); |
18 | System.out.println( "合計点は「" + sum + "」です。" ); |
21 | public static void main(String[] args) { |
23 | int [] score = new int [ 5 ]; |
26 | Scanner sin = new Scanner(System.in); |
32 | System.out.print( "点数を入力して下さい=>" ); |
33 | score[count] = sin.nextInt(); |
42 | } catch (InputMismatchException e){ |
43 | System.out.println( "正数値を入力して下さい!" ); |
49 | System.out.println( "-------------------------" ); |
next>> 9.9 練習問題 解答