7-4 sdust-Java-string set union(20ポイント)

古いjavaの質問のレビュー
7-4sdust-Java-string set union(20ポイント)
キーボードからN個の英語の文字列を受け取り(異なる文字列の数は10より大きい)、最初から5つの異なる文字列を取得します。セットS1を入力します。 、次に5つの異なる文字列を別のセットS2に取り込み、S1とS2の和集合の各文字列をアルファベット順に出力します(文字列では大文字と小文字が区別されます)

入力形式:
スペースで区切られた英語の文字列の行(異なる文字列の数は10より大きい)。

出力形式:
アルファベット順のS1とS2の和集合出力文字列(文字列の最初の文字が最初に比較され、同じ最初の文字を持つ文字列の2番目の文字が比較されます)。

入力サンプル:

android python java javaee javase database java jsp servlet java algorithm junit

サンプル出力:

algorithm
android
database
java
javaee
javase
jsp
python
servlet

年:

import java.util.*;
public class Main {
    
    

	public static void main(String[] args) {
    
    
		// TODO Auto-generated method stub
		Scanner in=new Scanner(System.in);
		
		Set<String> s1=new HashSet<>();
		Set<String> s2=new HashSet<>();
		
		while(s1.size()<5) {
    
    //只要不足5个就一直输入
			s1.add(in.next());
		}
		
		while(s2.size()<5) {
    
    //只要不足5个就一直输入
			s2.add(in.next());
		}
		
		Set<String> s3=new HashSet<>();//s3为s1与s2的并集
		
		for(String ss: s1) {
    
    
			s3.add(ss);
		}
		
		for(String ss:s2) {
    
    
			s3.add(ss);
		}
		
		String[] arr=new String[s3.size()];//将s3放到arr中
		int len=0;
		for(String ss:s3) {
    
    
			arr[len++]=ss;
		}
		
		Arrays.sort(arr,new sortClass());//对字符串数组排序
		
		for(int i=0;i<arr.length;i++) {
    
    //输出
			System.out.println(arr[i]);
		}
	}
}

class sortClass implements Comparator<String>{
    
    //sortClass
	public int compare(String s1,String s2) {
    
    
		return s1.compareTo(s2);
	}
}

おすすめ

転載: blog.csdn.net/timelessx_x/article/details/111905312