基础类

1.基础类库
java.lang(自动导入java.lang.*的)
java.util
java.io
java.awt javax.swing 图像用户界面
java.net
java.sql

2.Objcet类
a.equals
“==” 判断是否为同一个引用
equals 是否内容(含义)相等

例:

public class MyDate {
    public static void main(String[] args)
    { 
        String name1 = new String("LiMing");//false
        String name2 = new String("LiMing");//true
        System.out.println(name1 == name2);
        System.out.println(name1.equals(name2));

        String name3 = "LiMing";//true
        String name4 = "LiMing";//true
        System.out.println(name3 == name4);
        System.out.println(name3.equals(name4));

    }

}

b.getClass()

c.toString()

d.finalize()

e.线程相关 notify()、notifyAll()、wait()

3.包装类
将基本类型包装成引用类型
例:int->Integer
基本类型包装类 8类:Integer, Float, Long, Double, Boolean, Character, Byte, Short

Integer I = new Integer(10);

装箱:

Integer I = 10;
(Integer I = Integer.valueOf(10);)

拆箱

int i = I;
(int i = I.intvalue();)

4.Math类

Math.ceil()
Math.PI

5.System类

6.字符串
a.String 类 (对象不可修改,常量内部化)
(1)创建并返回新的String实例
(2)查找
(3)比较
(4)字符及长度
(5)format
b.StringBuffer、StringBuilder类
修改操作的方法:append,insert,reverse,setCharAt,setLength
c.分割

7.日期类
a.Calendar
b.Date
c.format
d.Java8

8.集合类
Collection API
接口:add, remove, size(), isEmpty(), contains(), iterator()

Iterator iterator = iterable.iterator();
while(iterator.hasNext()) doSomething(iterator.next());

a.List接口,实现类:ArrayList, LinkedList, vector
相册例子:

class Test
{
    public static void main(String[] args)
    {
        List<Photo> album = new LinkedList<>();
        album.add(new Photo("one", new Date(), "classroom"));
        album.add(new Photo("two", new Date(), "library"));
        album.add(new Photo("three", new Date(), "gym"));

        Iterator<Photo> iter = album.iterator();
        while(iter.hasNext())
        {
            Photo photo=iter.next();
            System.out.println(photo.toString() );
        }

        for ( Photo photo:album )
        {
            System.out.println( photo.toString() );
        }
    }


}
class Photo
{
    String title;
    Date date; 
    String memo;
    Photo(String title, Date date, String memo)
    {
        this.title = title;
        this.date = date;
        this.memo = memo;
    }
    @Override
    public String toString()
    {
        return title + " (" + date + " )" + memo;
    }

}

Stack
主要三种方法:1.push() 2.pop() 3.empty()
例子:月份压入与弹出

import java.util.*;
public class Stacks
{
    static String[] s={"January", "February", "March", "April"};
    public static void main(String[] args)
    {
        Stack stk = new Stack();
        for(int i=0;i<s.length;i++)
        {
            stk.push(s[i] + " ");
        }
        System.out.println(stk);
        while(!stk.empty())
        {
           System.out.println(stk.pop());
        }
    }
}

Queue
重要实现 LinkedList
1.插入 offer
2.移除 poll
3.检查 peek
4.isEmpty()

import java.util.*;
public class Queue
{
    public static void main(String[] args)
    {
        Queue<Integer> q = LinkedList<>()
        for(int i=0; i<5; i++)
        {
            q.offer(i);
        }
        while(!q.isEmpty())
        {
            System.out.println(q.poll());
        }
    }
}

b.Set
Set中的对象不重复,即hashCode()不等
两个重要实现:
1.HashSet
2.TreeSet 底层用TreeMap来实现

import java.util.*;
public class MyDate {
    public static void main(String[] args)
    { 
        Set s = new HashSet();
        s.add("1st");
        s.add("2nd");
        s.add("3rd");

        s.add(new Integer(6));
        s.add(new Double(6.0));

        s.add("2nd");
        s.add(new Integer(6));
        print(s);
    }
    public static void print(Set s)
    {
        System.out.println(s);
    }

}

c.Map
取到entrySet()、keySet()、values()
Map.Entry是一个嵌套接口
重要实现 1.HashMap 2.TreeMap
例:添加,遍历获取值,迭代获取值

import java.util.*;
public class MyDate {
    public static void main(String[] args)
    { 
        Map p = new HashMap();
        p.put("one", "A");
        p.put("two", "B");
        p.put("three", "C");
        p.put(new String("five"), "E");
        p.put(new String("five"), "O");
        p.put("four", "D");

        System.out.println(p.get("three"));

        for(String key:p.keySet())
        {
            System.out.println(key + ":" + p.get(key));
        }

        for(String value:p.values())
        {
            System.out.println(value);
        }

        for(Map.Entry<String, String> entry:p.entrySet())
        {
            System.out.println(entry.getKey()+entry.getValue());
        }

        Iterator iter = p.entrySet().iterator();
        while(!iter.hasNext())
        {
            Map.Entry<String, String> entry = (Map.Entry<String, String>) iter.next();
            System.out.println(entry.getKey() + entry.getValue());
        }

    }

}

9.排序,查找与比较
Arrays类

Arrays.<String>sort(s);
int loc = Arrays.<String>binarySearch(s, s[2]);

Collection类

import java.util.*;

class Test()
{
    public static void main(String[] args)
    {
        List<Person> school  = new ArrayList<>();
        school.add(new Person("Li",23));
        school.add(new Person("Sun",23));
        school.add(new Person("Chen",23));
        school.add(new Person("Wu",23));
        System.out.println(school);

        Collections.sort(school, new PersonComparator() );
        System.out.println(school);

        int index = Collections.binarySearch(school,new Person("Li",23), new PersonComparator() );
        if( index >=0 )
        {
            System.out.println("Found:" + school.get(index));
        }
        else
        {
            System.out.println("Not Found!"); 
        } 
    }
}

class Person
{
    String name;
    int age;
    public Person(String name,int age)
    {
        this.name = name;
        this.age = age;
    }
    @Override
    public String toString(){
        return name+":"+age;
    }
}

class  PersonComparator implements Comparator
{
    public int compare(Object obj1, Object obj2)
    {
        Person p1 = (Person)obj1;
        Person p2 = (Person)obj2;
        if(p1.age > p2.age) return 1;
        else if(p1.age < p2.age) return -1;
        return p1.name.compareTo(p2.name);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值