7-21 sdust-Java-字符串集合求并集 (20 分)
从键盘接收N个英文字符串(其中不同的字符串数量大于10),从头开始取5个不同的字符串放入一个集合S1,然后接着取5个不同的字符串放入另一个集合S2,按照字母顺序输出S1和S2的并集中的每个字符串(字符串区分大小写)
输入格式:
一行以空格分开的英文字符串(不同的字符串数量大于10)。
输出格式:
按照字母顺序(先比较字符串首字母,首字母相同的比较字符串第二个字母,以此类推)输出的S1和S2并集的字符串。
输入样例:
android python java javaee javase database java jsp servlet java algorithm junit
输出样例:
algorithm
android
database
java
javaee
javase
jsp
python
servlet
参考答案
import java.util.*;
class Main{
public static void main(String[] args) {
TreeSet s1 = new TreeSet(); // 默认字典顺序排序
TreeSet s2 = new TreeSet();
Scanner cin = new Scanner(System.in);
String str_input = cin.nextLine();
String []str_selset = str_input.split(" ");
for(int i = 0; i < str_selset.length; ++ i) {
if( s1.size() != 5){
s1.add(str_selset[i]);
}
else if( s2.size() != 5 ){
s2.add(str_selset[i]);
}
else{
break;
}
}
s1.addAll(s2);
// 遍历方法一
// Iterator it = s1.iterator();
//
// while( it.hasNext()){
// System.out.println(it.next());
// }
// 遍历方法二
for( Object str : s1){
System.out.println(str);
}
cin.close();
}
}