Java知识弥补-Android开发

博观而约取,厚积而薄发。这篇文章主要讲述Java知识弥补-Android开发相关的知识,希望能为你提供帮助。
目录

  • 数据结构
    • 1. Map-HashMap
    • 2. StringBuilder
    • 3. List-ArrayList
    • 4. Vector
    • 5. Stack
    • 6. Set
【Java知识弥补-Android开发】由于这学期开了android课程,好久没有接触的java已经彻底生疏了,常用的数据结构以及包都已经不大会用了,所以写一个知识弥补的博客,以便以后回忆。
Java API
数据结构 1. Map-HashMap
import java.util.Map; import java.util.HashMap; import java.util.Set; import java.util.Collection; Map< Integer,String> m1=new HashMap< Integer,String> (); for(int i = 0 ; i < 10 ; i++){ m1.put(i,String.format(" test%d" ,i)); } System.out.println(m1); Set< Map.Entry< Integer,String> > set=m1.entrySet(); for(Map.Entry< Integer,String> entry:set){ System.out.println(entry.getKey() + " :" + entry.getValue()); }//查找某一个key对应的value m1.get(key); //判断是否存在 m1.containsKey(4); m2.containsValue(" test" ); Set< Integer> keys=m1.keySet(); Collection< String> values = m1.values(); //删除key对应的一对键值 m1.remove(key);

2. StringBuilder
//主要操作是append 和 insert方法 StringBuilder< String> sb = new StringBuilder< String> (); sb.append(" test" ); int sb.capacity(); //返回当前容量 char sb.charAt(int index); //得到对应的char值 int sb.codePointAt(int index); //返回索引处字符 StringBuilder sb.deleteCharAt(int index); //删除某处的字符 //通常是start和end是与sb.length()相关的 StringBuilder sb.delete(int start,int end); //查找指定字符串 int sb.indexOf(String str); //插入 StringBuilder sb.insert(int offset,String str); StringBuilder sb.reverse();//翻转 StringBuilder sb.replace(int start,int end,String str); //替换操作 void trimToSize();//尝试减少字符序列存储空间 String sb.toString();//返回字符串表示形式

3. List-ArrayList
List:大小可变数组
boolean addAll (Collection< ? extends E> c) 按照指定 collection 的迭代器所返回的元素顺序,将该 collection 中的所有元素添加到此列表的尾部。
boolean addAll (int index, Collection< ? extends E> c) 从指定的位置开始,将指定 collection 中的所有元素插入到此列表中。
void clear () 移除此列表中的所有元素。
Object clone () 返回此 ArrayList 实例的浅表副本。
boolean contains (Object o) 如果此列表中包含指定的元素,则返回 true
void ensureCapacity (int minCapacity) 如有必要,增加此 ArrayList 实例的容量,以确保它至少能够容纳最小容量参数所指定的元素数。
E get (int index) 返回此列表中指定位置上的元素。
int indexOf (Object o) 返回此列表中首次出现的指定元素的索引,或如果此列表不包含元素,则返回 -1。
boolean isEmpty () 如果此列表中没有元素,则返回 true
int lastIndexOf (Object o) 返回此列表中最后一次出现的指定元素的索引,或如果此列表不包含索引,则返回 -1。
E remove (int index) 移除此列表中指定位置上的元素。
boolean remove (Object o) 移除此列表中首次出现的指定元素(如果存在)。
protectedvoid removeRange (int fromIndex, int toIndex) 移除列表中索引在 fromIndex(包括)和 toIndex(不包括)之间的所有元素。
E set (int index, E element) 用指定的元素替代此列表中指定位置上的元素。
int size () 返回此列表中的元素数。
Object[] toArray () 按适当顺序(从第一个到最后一个元素)返回包含此列表中所有元素的数组。
< T> T[] toArray (T[] a) 按适当顺序(从第一个到最后一个元素)返回包含此列表中所有元素的数组;返回数组的运行时类型是指定数组的运行时类型。
void trimToSize () 将此 ArrayList 实例的容量调整为列表的当前大小。
4. Vector
import java.util.*; import java.util.List; import java.util.Vector; Vector< String> vec = new Vector< String> (); String[] arr1={" a" ," b" ," c" ," d" }; Vector< String> vec2 = new Vector< String> (Arrays.asList(arr1)); //如何遍历 Enumeration< String> iter = vec.elements(); while(iter.hasMoreElements()){ System.out.println(iter.nextElement()); }//其他一些属性: vec.capacity(); //vector容量 vec.size(); //vector大小 vec.isEmpty(); //是否为空 vec.setSize(15); //设置size vec.trimToSize(); //压缩到Size vec.hashCode(); //哈希码 vec.equals(vec2); //相等//增删改查 //增 vec.add(0," addthing" ); i=0 vec.add(String.format(" %d" ,i))//从尾部添加String vec.addAll(3,vec2)//从第3个元素,添加另外一个vector(如果没有3那就从尾部插入) vec.add(8," test" )//在第8个位置添加“test” vec.insertElementAt(" test" ,3)//从第三个位置开始插入test//删 vec.remove(" deletething" ); //删字符串 vec.removeElementAt(2); //删第2个位置上的字符 vec.removeAllElements(); //全部删掉 = clear()//改 vec.set(0," start" ); //设置第0位置为start字符串//查 //取某一位数据 String str=vec.get(3); //vec的第三个位置的内容 String str=vec.firstElement(); String str=vec.lastElement();

5. Stack
Stack继承自Vector,所以继承了全部的方法,下面介绍特有的方法:
Stack< Integer> s = new Stack< Integer> (); for(int i = 0 ; i < 10 ; i++){ s.push(i); } //压栈 s.push(10); //取顶 s.peek(); //弹出顶 Integer top = s.pop(); //查找 s.search(3); //找不到返回-1,找到则返回从后往前数的第几位(从栈顶开始数)

6. Set
import java.util.ArrayList; import java.util.Set; public static void setDemo() { int[] nums = new int[] {1, 4, 8, 3, 22, 34, 4, 6, 0, 33, 5, 6, 3, 9}; List list = new ArrayList(); for (int i:nums) { list.add(i); } System.out.println(list); //[1, 4, 8, 3, 22, 34, 4, 6, 0, 33, 5, 6, 3, 9] Set< Integer> set = new HashSet< Integer> (); //remove duplicate elements set.addAll(list); System.out.println(set); //[0, 1, 33, 34, 3, 4, 5, 22, 6, 8, 9] set.add(4); //4 is a duplicate element, so this will not take effect System.out.println(set); //[0, 1, 33, 34, 3, 4, 5, 22, 6, 8, 9] System.out.println(set.size()); //11 }


    推荐阅读