Mainly let them input and output data separately. It should be noted that the output of Set needs to be traversed, and the input of Map is a key-value pair style.
List code:
package com.whvc.www;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class ListTest {
public static void main(String[] args) {
List<String>list=new ArrayList<String>();
Scanner scan=new Scanner(System.in);
while(true) {
String str;
str=scan.next();
list.add(str);
if(str.equals("q")) {
break;
}
}
for(int i=0;i<list.size();i++) {
System.out.println(list.get(i));
}
}
}
Set code:
package com.whvc.www;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Scanner;
import java.util.Set;
public class SetTest {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
Set<String>s=new HashSet<String>();
while(true){
String str=scan.next();
s.add(str);
if(str.equals("q")) {
break;
}
}
Iterator<String>it=s.iterator();
while(it.hasNext()) {
String string=it.next();
System.out.println(string);
}
}
}
Map code:
package com.whvc.www;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class MatTest {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
Map<String,String>m=new HashMap<String,String>();
while(true) {
String s=scan.nextLine();
if(s.equals("q")) {
break;
}
String []a=s.split(",");
m.put(a[0], a[1]);
}
System.out.println(m);
}
}