古い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);
}
}