問題集:文字列 API

問題1

コマンドライン引数第1引数に、「あああ,いいい,ううう,えええ,おおお」と入力。その文字列のカンマを除去した文字列を表示させなさい
ヒント)Stringクラスのsplitメソッドを使用。
実行例)
あああ
いいい
ううう
えええ
おおお

回答をみる
copied!

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;
	}
}

問題2

コマンドライン引数で文字列を入力し、3文字目に当たる文字を出力するプログラムを作成しなさい。
※ コマンドライン引数では3文字以上入力すること
ヒント)StringクラスのcharAtメソッドを使用。

例)「backup」と入力した場合、[c]が出力される

回答をみる
copied!

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;
	}
}

問題3

『aaaHelloJavabbb』を『HelloJava』と表示するプログラムを作成しなさい。
ヒント)StringBuilderクラスのdeleteメソッドを使用する事

回答をみる
copied!

/* 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;
	}
}

問題4

下記の通りの処理を実行させるを作成しなさい。
① コマンドライン引数から文字列を入力
② 入力された文字列が「AB」から始まっていれば【OK】、始まっていなければ【NG】と表示させなさい。
ヒント)Stringクラスのメソッドを使用。

回答をみる
copied!

/**
 * 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" );	
			
		}
		
	}
}

RJC

RJCはエンジニアが主役。 RJCのエンジニアはお客様の未来のために、スキルを高め続けています。 RJCはそんなエンジニアを全力で応援し、エンジニアと共にお客様にハッピーを届けます。