一.数组常用操作
import java.io.*; import java.math.*; import java.util.*; public class Main { private static int []a=new int[20]; public static void print() { for(int i=0;i<20;i++) System.out.print(a[i]+" "); System.out.println(""); } public static void main(String[] args) { Scanner cin=new Scanner (new BufferedInputStream(System.in)); Arrays.fill(a,1);//给a数组赋值为1 print(); for(int i=0;i<20;i++) a[i]=i%10; print(); Arrays.sort(a);//升序 print(); //没有降序函数,可以自定义排序方式 //但是既然已经升序,从后往前看就是降序了 int index=Arrays.binarySearch(a,4);//查找值为4的下标 System.out.println(index); } }二.set集合
HashSet:没有重复的,添加进去的可以是不同类型的。
TreeSet:没有重复,添加进去的必须是同种类型的,因为会自动排序。
HashSet:
import java.io.*; import java.math.*; import java.util.*; public class Main { public static void main(String[] args) { Scanner cin=new Scanner (new BufferedInputStream(System.in)); HashSet s=new HashSet(); s.add(2);s.add("liwei");s.add(1.23);s.add(true);//添加元素 System.out.println(s.size());//set的长度 if(s.contains("liwei")) //查找某个是否存在 System.out.println("找到"); s.remove("liwei"); Iterator i=s.iterator(); while(i.hasNext()) //迭代器进行遍历 System.out.println(i.next()); } }TreeSet:
import java.io.*; import java.math.*; import java.util.*; public class Main { public static void main(String[] args) { Scanner cin=new Scanner (new BufferedInputStream(System.in)); TreeSet s=new TreeSet(); s.add(12);s.add(5);s.add(100);s.add(1);//添加同类型元素 System.out.println(s.size());//treeSet的长度 if(s.contains(5)) //查找某个是否存在 System.out.println("找到5"); s.remove(5); Iterator i=s.iterator(); while(i.hasNext()) //迭代器进行遍历 System.out.println(i.next()); } }
int indexOf(ArrayList a),int lastIndexOf(ArrayList a)。
LinkedList:代替C++中的stack和queue,常用方法:ArrayList的方法LinkedList都可以用,多加的方法有addFirst(),
addLast(),removeFirst(),removeLast(),以便实现stackt和queue的功能。
ArrayList:
import java.io.*; import java.math.*; import java.util.*; public class Main { public static void main(String[] args) { Scanner cin=new Scanner (new BufferedInputStream(System.in)); ArrayList list=new ArrayList(); list.add(2);list.add("liwei");list.add(1.25);list.add(true); Iterator i=list.iterator(); while(i.hasNext()) System.out.println(i.next()); ArrayList list2=new ArrayList(); list2.add(2);list2.add(-1);list2.add(100);list2.add(500); Collections.sort(list2); //用Collections类实现list的排序 Iterator ii=list2.iterator(); while(ii.hasNext()) System.out.println(ii.next()); } }
import java.io.*; import java.math.*; import java.util.*; public class Main { public static void main(String[] args) { Scanner cin=new Scanner (new BufferedInputStream(System.in)); LinkedList list=new LinkedList(); list.add(2);list.add("liwei");list.add(1.25);list.add(true); list.addFirst("abcd"); list.addLast(123); Iterator i=list.iterator(); while(i.hasNext()) System.out.print(i.next()+" "); System.out.println(""); System.out.println("第一个元素"+list.getFirst());//这个方法以便实现stack和queue操作 System.out.println("最后一个元素"+list.getLast()); list.removeFirst(); list.removeLast(); i=list.iterator(); while(i.hasNext()) System.out.print(i.next()+" "); } } 或者如下面定义LinkedList的类型(其他类似): public class Main { public static void main(String[] args) { Scanner cin=new Scanner (new BufferedInputStream(System.in)); LinkedList<Integer> list=new LinkedList<Integer>(); list.add(2);list.add(5);list.add(1);list.add(-5); list.addFirst(100); list.addLast(200); Iterator i=list.iterator(); while(i.hasNext()) System.out.print(i.next()+" "); System.out.println(""); System.out.println("第一个元素"+list.getFirst());//这个方法以便实现stack和queue操作 System.out.println("最后一个元素"+list.getLast()); list.removeFirst(); list.removeLast(); i=list.iterator(); while(i.hasNext()) System.out.print(i.next()+" "); } }
HashMap:插入的类型可以不同,常用函数:添加元素put(key,value),remove(key),clear(),获得映射的内容get(key),
containsKey(key)是否存在当前key,containsValue(value)是否存在当前映射值,isEmpty(),size(),keySet()返回集合。
TreeMap:插入的类型必须相同,因为会自动排序,函数和上面相同。
HashMap:
import java.io.*; import java.math.*; import java.util.*; public class Main { public static void main(String[] args) { Scanner cin=new Scanner (new BufferedInputStream(System.in)); HashMap m=new HashMap(); m.put("张三",10); m.put("李四",11); m.put("王五",12); if(m.containsKey("李四")) System.out.println("找到李四"); System.out.println(m.get("李四")); if(m.containsValue(m.get("李四"))) System.out.println("存在值"+m.get("李四")); if(!m.isEmpty()) System.out.println("非空"); Iterator it=m.keySet().iterator(); while(it.hasNext()) { String key=(String)it.next(); System.out.println(key+" "+m.get(key)); } } }TreeMap和HashMap差不多,代码就不写了。
五.Collections类常用操作
主要是用list集合的操作,对list集合操作的主要函数要:
int binarySearch(List list,Object key);
void copy(List one,List two);
void fill(List list,Object obj);
void sort(List list);
void reverse(List list);//实现list数组的翻转
vois swap(List list,int i,int j);