Tips

【Java】プログラム作成練習問題30

【Java】プログラム作成練習問題30

プログラム作成練習問題30回となります。

※この出題形式に関しては答えは1つではありません。
解答例はできるだけ複数載せるつもりですが、問題文の要件を満たしていれば正解として下さい。

問題

ArrayListに文字列を格納し、その中で文字数が一番多い文字列を表示するプログラムを作成せよ。
ただし、最大文字数が同じ値が複数ある場合は全て表示すること。

解答例1
import java.util.ArrayList;

public class Excercise_030 {
	public static void main(String[] args) {
		ArrayList<String> strList = new ArrayList<>();
		strList.add("あいう");
		strList.add("あいうえ");
		strList.add("あいうえお");
		strList.add("かきくけこ");
		strList.add("かきくけ");
		strList.add("かきく");

		// 最多文字数を取得
		int maxLength = 0;
		for(String str : strList) {
			if(maxLength < str.length()) {
				maxLength = str.length();
			}
		}

		// 最多文字数と同じ文字数の文字列を表示
		for(String str : strList) {
			if(str.length() == maxLength) {
				System.out.println(str);
			}
		}
	}
}

解答例2
import java.util.ArrayList;

public class Excercise_030 {
	public static void main(String[] args) {
		ArrayList<String> strList = new ArrayList<>();
		strList.add("あいう");
		strList.add("あいうえ");
		strList.add("あいうえお");
		strList.add("かきくけこ");
		strList.add("かきくけ");
		strList.add("かきく");

		// 最多文字数を取得
		int maxLength = strList.get(0).length();
		for(int i = 1; i < strList.size(); i++) {
			if(maxLength < strList.get(i).length()) {
				maxLength = strList.get(i).length();
			}
		}

		// 最多文字数と同じ文字数の文字列を表示
		for(int i = 0; i < strList.size(); i++) {
			if(strList.get(i).length() == maxLength) {
				System.out.println(strList.get(i));
			}
		}
	}
}

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

はじめてのJAVA 連載

Recent News

Recent Tips

Tag Search