sadf
public class StudyList {
public static void main(String argc[]){
Scanner scanner = new Scanner(System.in);
List<String> list= new ArrayList<String>(); //list 用得最简单的就是ArrayList了,他的功能和数组相似
StringQueue queue=new StringQueue(); //后面 用LinkedList模拟了 queue和stack
StringStack stack=new StringStack();
System.out.println("输入quit结束");
while(true){
String inString =scanner.next();
if(inString.equals("quit"))
break;
list.add(inString);
queue.put(inString);
stack.push(inString);
}
System.out.println("输出为:");//下面是对ArrayList的基本遍历方式:
for(int i=0;i<list.size();i++){
System.out.println(list.get(i));
}
System.out.println("----------------------------------");
Iterator iterator = list.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
System.out.println("----------------------------------");
for(String testString:list){
System.out.println(testString);
}
System.out.println("queue----------------------------------");
queue.get();
while(!queue.isEmpty()){
System.out.println(queue.heard());
queue.get();
}
System.out.println("static----------------------------------");
stack.pop();
while(!stack.isEmpty()){
System.out.println(stack.top());
stack.pop();
}
System.out.println("HashSet--------------------------------");
Set<String> set=new HashSet<String>();
set.add("caterpillar");
set.add("momor");
set.add("bush");
set.add("caterpillar");//HashSet中不能有重复的
for(String name:set){
System.out.println(name+" ");
}
System.out.println();
System.out.println("TreeSet----------------------");//treeset可以对其对象进行 排序
Set<String> treeset = new TreeSet<String>();//对String 以字典序排序
treeset.add("bbb");
treeset.add("aaa");
treeset.add("ccc");
for(String s:treeset){
System.out.println(s);
}
Set<Integer> inttreeset = new TreeSet<Integer>();//对String 以字典序排序
Integer integer=1;//对int 进行排序
inttreeset.add(2);
inttreeset.add(1);
inttreeset.add(3);
for(int i:inttreeset){
System.out.println(i);
}
System.out.println("Map------------------------------");
Map<String,String> map=new HashMap<String,String>();
map.put("name1", "passwd1");
map.put("name2", "passwd2");
//可以由name 找到 passwd 形成键值对
System.out.println(map.get("name1"));
System.out.println("TreeMap-------------------");
//同样treemap也是可以对对象排序,
Map<Integer,String> treeMap = new TreeMap<Integer,String>();
treeMap.put(2,"二");
treeMap.put(1,"一");
treeMap.put(3,"三");
for(String m:treeMap.values()){
System.out.println(m);
}
}
}
用Linklist模拟的queue和stack:
import java.util.LinkedList;
public class StringQueue { //queue first-in first-out
LinkedList<String> list=new LinkedList<String>();
public void put(String in){
list.addFirst(in);
}
public String get(){
return list.removeLast();
}
public String heard(){
return list.getLast();
}
public boolean isEmpty(){
return list.isEmpty();
}
}
import java.util.LinkedList;
public class StringStack {//stack first-in last-out
private LinkedList<String> linkedList=new LinkedList<String>();
public void push(String in){
linkedList.addFirst(in);
}
public String pop(){
return linkedList.removeFirst();
}
public String top(){
return linkedList.getFirst();
}
public boolean isEmpty(){
return linkedList.isEmpty();
}
}