問題~文字列 API~
コマンドライン引数第1引数に、「あああ,いいい,ううう,えええ,おおお」と入力。その文字列のカンマを除去した文字列を表示させなさい
ヒント)Stringクラスのsplitメソッドを使用。
実行例)
あああ
いいい
ううう
えええ
おおお
回答
public class Lv0305 { /** * mainメソッド * * @param args コマンドライン引数 */ public static void main ( String[] args ) { // コマンドライン引数を取得 String moji1 = args[0]; String moji2 = args[1]; String moji3 = args[2]; //サブクラスのインスタンス生成 Lv0305sub sub = new Lv0305sub(); StringBuilder sb = sub.appendString(moji1, moji2, moji3); // 表示 System.out.println( sb ); } } public class Lv0305sub { public StringBuilder appendString(String args1 , String args2 , String args3){ //StringBufferを生成 StringBuilder sb = new StringBuilder(); //文字を追加する sb.append(args1); sb.append(args2); sb.append(args3); return sb; } }
コマンドライン引数で文字列を入力し、3文字目に当たる文字を出力するプログラムを作成しなさい。
※ コマンドライン引数では3文字以上入力すること
ヒント)StringクラスのcharAtメソッドを使用。
例)「backup」と入力した場合、[c]が出力される
回答
public class Lv0306 { /** * mainメソッド * * @param args コマンドライン引数 */ public static void main ( String[] args ) { // コマンドライン引数を取得 String moji = args[0]; //サブクラスのインスタンス生成 Lv0306sub sub = new Lv0306sub(); //引数で指定された文字の3番目の文字を取得 char thirdMoji = sub.getChar(moji, 2); // 表示 System.out.println( thirdMoji ); } } public class Lv0306sub { /* * 引数で指定された文字のnum番目の文字を返却する */ public char getChar(String moji, int num){ // 3文字目を取得 char thirdMoji = moji.charAt(num); return thirdMoji; } }
『aaaHelloJavabbb』を『HelloJava』と表示するプログラムを作成しなさい。
ヒント)StringBuilderクラスのdeleteメソッドを使用する事
回答
/* API問題実行クラス * */ public class Lv0307 { /** * mainメソッド * * @param args コマンドライン引数 */ public static void main ( String[] args ) { // コマンドライン引数を取得 String moji = args[0]; //サブクラスのインスタンス生成 Lv0307sub sub = new Lv0307sub(); //文字列削除メソッドの呼び出し StringBuilder sb = sub.deleteStr(moji); // 表示 System.out.println( sb ); } } public class Lv0307sub { /* * 引数で渡ってきた文字列の0~3番目 * 9~12番目を削除する */ public StringBuilder deleteStr(String moji){ // StringBuilderの生成 StringBuilder sb = new StringBuilder(moji); // 前後の文字削除 sb.delete( 0, 3 ); sb.delete( 9, 12 ); return sb; } }
下記の通りの処理を実行させるを作成しなさい。
① コマンドライン引数から文字列を入力
② 入力された文字列が「AB」から始まっていれば【OK】、始まっていなければ【NG】と表示させなさい。
ヒント)Stringクラスのメソッドを使用。
回答
/** * API問題実行クラス * * @author RJC Human Resource */ public class Lv0308 { /** * mainメソッド * * @param args コマンドライン引数 */ public static void main ( String[] args ) { // コマンドライン引数を取得 String param = args[0]; //サブクラスのインスタンス生成 Lv0308sub sub = new Lv0308sub(); //文字列判定メソッド呼び出し sub.jugeStr(param); } } public class Lv0308sub { /* * 引数で渡ってきた文字列が、ABで始まっていた場合OKを表示 * 始まっていない場合NGを表示 */ public void jugeStr(String moji){ //引数がABから始まっているか確認 boolean flag = moji.startsWith("AB"); // ABから始まっていた場合 if ( flag ) { // 表示 System.out.println( "OK" ); // ABから始まっていない場合 } else { // 表示 System.out.println( "NG" ); } } }