国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Java編程基礎(chǔ)18——集合(Set集合)

SexySix / 3211人閱讀

摘要:并把最終的隨機(jī)數(shù)輸出到控制臺。方法,在集合中如何存儲元素取決于方法的返回值返回,集合中只有一個元素。創(chuàng)建集合對象,傳入比較器。

1_HashSet存儲字符串并遍歷

A:Set集合概述及特點(diǎn)

通過API查看即可

B:案例演示

HashSet存儲字符串并遍歷

import java.util.HashSet;
public class Demo1_HashSet {
    public static void main(String[] args) {
        //Set集合,無索引,不可以重復(fù),無序(存取不一致)
        HashSet hs = new HashSet<>();    //創(chuàng)建HashSet對象
        boolean b1 = hs.add("a");
        boolean b2 = hs.add("a");                //當(dāng)向Set集合中儲存重復(fù)元素的時(shí)候返回為false
        hs.add("b");
        hs.add("c");
        hs.add("d");
        
        System.out.println(hs);                    //HashSet的繼承體現(xiàn)中有重寫toString方法
        System.out.println(b1);
        System.out.println(b2);
        
        for (String string : hs) {                //只要能用迭代器迭代的,就可以使用增強(qiáng)for循環(huán)遍歷
            System.out.println(string);
        }
    }
}
2_HashSet存儲自定義對象保證元素唯一性

A:案例演示

存儲自定義對象,并保證元素唯一性。

重寫hashCode()和equals()方法

B:畫圖演示

畫圖說明比較過程

C:代碼優(yōu)化

為了減少比較,優(yōu)化hashCode()代碼寫法。

最終版就是自動生成即可。

代碼寫的復(fù)雜,目的就是為了少調(diào)用equals方法,提高我們程序運(yùn)行的效率

D:原理

1.HashSet原理

我們使用Set集合都是需要去掉重復(fù)元素的, 如果在存儲的時(shí)候逐個equals()比較, 效率較低;哈希算法提高了去重復(fù)的效率, 降低了使用equals()方法的次數(shù)

當(dāng)HashSet調(diào)用add()方法存儲對象的時(shí)候, 先調(diào)用對象的hashCode()方法得到一個哈希值(如同上火車先有票), 然后在集合中查找是否有哈希值相同的對象

如果沒有哈希值相同的對象就直接存入集合

如果有哈希值相同的對象, 就和哈希值相同的對象逐個進(jìn)行equals()比較,比較結(jié)果為false就存入, true則不存

2.將自定義類的對象存入HashSet去重復(fù)

類中必須重寫hashCode()和equals()方法

hashCode(): 屬性相同的對象返回值必須相同, 屬性不同的返回值盡量不同(提高效率)

equals(): 屬性相同返回true, 屬性不同返回false,返回false的時(shí)候存儲

import java.util.HashSet;
import net.allidea.bean.Person;
public class Demo1_HashSet {
    public static void main(String[] args) {
        HashSet hs = new HashSet<>();
        hs.add(new Person("張三",23));
        hs.add(new Person("張三",23));
        hs.add(new Person("李四",24));
        hs.add(new Person("李四",24));
        hs.add(new Person("李四",24));
        
//        System.out.println(hs.size());
        System.out.println(hs);
    }
}
//Person文件
public class Person {
    private String name;
    private int age;
    public Person() {
        super();
    }
    public Person(String name, int age) {
        super();
        this.name = name;
        this.age = age;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    @Override
    public String toString() {
        return "Person [name=" + name + ", age=" + age + "]";
    }
    
    //為什么是31? 1.是質(zhì)數(shù)。2.既不大也不小。3.是2的五次方-1,2向左移動五位
    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + age;
        result = prime * result + ((name == null) ? 0 : name.hashCode());
        return result;
    }
    @Override
    public boolean equals(Object obj) {
        if (this == obj)                        //調(diào)用的對象和傳入的對象是同一個對象
            return true;
        if (obj == null)                        //傳入的對象為NULL
            return false;
        if (getClass() != obj.getClass())        //判斷兩個對象對應(yīng)的字節(jié)碼文件是否是同一個字節(jié)碼
            return false;
        Person other = (Person) obj;            //向下轉(zhuǎn)型
        if (age != other.age)                    //調(diào)用對象的年齡不等于傳入對象的年齡
            return false;
        if (name == null) {                        //調(diào)用對象的姓名為null
            if (other.name != null)
                return false;
        } else if (!name.equals(other.name))    //調(diào)用對象的姓名不等于傳入對象的姓名
            return false;
        return true;
    }    
    
/*    @Override
    public boolean equals(Object obj) {
        System.out.println("執(zhí)行了嗎");
        Person p = (Person)obj;
        return this.name.equals(p.name) && this.age == p.age;
    }
    @Override
    public int hashCode() {
        //return 10;
        //return age;
        final int NUM = 38;
        return name.hashCode() * NUM + age;
    }*/
}
3_LinkedHashSet的概述和使用

A:LinkedHashSet的特點(diǎn)(Linked代表的是鏈表實(shí)現(xiàn)的,HashSet代表的是屬于HashSet派系的)

B:LinkedHashSet的特點(diǎn)

可以保證怎么存就怎么取

1.底層是鏈表實(shí)現(xiàn)的,是Set集合中唯一一個能保證怎么存就怎么取的集合對象

2.因?yàn)槭荋ashSet的子類,所以也保證了元素是唯一的,與HashSet的原理一樣

import java.util.LinkedHashSet;
public class Demo2_LinkedHashSet {
    public static void main(String[] args) {
        LinkedHashSet lhs = new LinkedHashSet<>();
        lhs.add("a");
        lhs.add("a");
        lhs.add("a");
        lhs.add("b");
        lhs.add("c");
        lhs.add("d");
        
        System.out.println(lhs);
    }
}
4_產(chǎn)生10個1-20之間的隨機(jī)數(shù)要求隨機(jī)數(shù)不能重復(fù)

A:案例演示

需求:編寫一個程序,獲取10個1至20的隨機(jī)數(shù),要求隨機(jī)數(shù)不能重復(fù)。并把最終的隨機(jī)數(shù)輸出到控制臺。

import java.util.HashSet;
import java.util.Random;

public class Demo3_test {
    public static void main(String[] args) {
        Random r = new Random();                //1.創(chuàng)建Random隨機(jī)數(shù)對象
        
        HashSet hs = new HashSet<>();    //2.需要存儲10個隨機(jī)數(shù),不能重復(fù),用HashSet集合
        
        while(hs.size() < 10) {            //3.如果HashSet的size<10就可以不斷的存儲,如果>=10就停止存儲
            hs.add(r.nextInt(20) + 1);    //4.通過Random類中的nextInt(n)方法,獲取1-20之間的隨機(jī)數(shù),   
        }                                    //并將這些隨機(jī)數(shù)存儲在HashSet集合中
        for (Integer integer : hs) {            //5.遍歷HashSet
            System.out.println(integer);
        }
    }
}
5_練習(xí)

使用Scanner從鍵盤讀取一行輸入,去掉其中重復(fù)字符, 打印出不同的那些字符

import java.util.HashSet;
import java.util.Scanner;

public class Demo2 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);        //1.創(chuàng)建Scanner對象
        System.out.println("請輸入一行字符串:");
        HashSet hs = new HashSet<>();     //2.創(chuàng)建HashSet對象,將字符存儲去掉重復(fù)
        String line = sc.nextLine();
        char[] arr = line.toCharArray();            //3.將字符串轉(zhuǎn)換為字符數(shù)組,獲取每一個字符存儲在HashSet集合中,自動去除重復(fù)
        
        for (char c : arr) {                        //4.遍歷字符數(shù)組
            hs.add(c);
        }
        
        for(Character ch : hs) {                    //5.自動拆箱,遍歷HashSet,打印每一個字符
            System.out.println(ch);
        }
    }
}
6_練習(xí)

需求: 將集合中的重復(fù)元素去掉

import java.util.List;
import java.util.ArrayList;
import java.util.LinkedHashSet;

public class Demo3 {
    public static void main(String[] args) {
        ArrayList list = new ArrayList<>();//1.創(chuàng)建List集合存儲若干個重復(fù)元素
        list.add("a");
        list.add("a");
        list.add("b");
        list.add("b");
        list.add("b");
        list.add("c");
        
        getSingle(list);            //2.多帶帶定義方法去除重復(fù)    
        System.out.println(list);    //3.打印List集合
    }
    public static void getSingle(List list) {
        LinkedHashSet lhs = new LinkedHashSet<>();        //1.創(chuàng)建一個LinkedHashSet集合
        lhs.addAll(list);            //2.將List集合中所有的元素添加到LinkedHashSet集合中,去重
        list.clear();                //3.將List集合中的元素清空。
        list.addAll(lhs);            //4.將LinkedHashSet集合中的元素添加回List集合中
    }
}
7_TreeSet存儲Integer類型的元素并遍歷

A:案例演示

TreeSet存儲Integer類型的元素并遍歷

TreeSet是用來對元素進(jìn)行排序的,同樣也可以保證元素的唯一

import java.util.TreeSet;
public class Demo3_TreeSet {
    public static void main(String[] args) {
        TreeSet ts = new TreeSet<>();
        ts.add(1);
        ts.add(1);
        ts.add(3);
        ts.add(3);
        ts.add(2);
        
        System.out.println(ts);
    }
}
8_TreeSet存儲自定義對象以及保證元素唯一和自然排序的原理

A:案例演示

存儲自定義Person對象

TreeSet集合是用來對象元素進(jìn)行排序的,同樣也可以保證元素的唯一

當(dāng)compareTo方法返回0的時(shí)候,集合中只有一個元素

當(dāng)compareTo方法返回正數(shù)的時(shí)候,集合會正序存儲(怎么存,就怎么取)

當(dāng)compareTo方法返回負(fù)數(shù)的時(shí)候,集合會倒序存儲

B:TreeSet保證元素唯一和自然排序的原理和圖解

原理

二叉樹——小的存儲在左邊(負(fù)數(shù)),大的存儲在右邊(正數(shù)),相等就不存(返回0)。

compareTo方法,在TreeSet集合中如何存儲元素取決于CopareTo方法的返回值

1.返回0,集合中只有一個元素。通過比較不存儲。

2.返回-1,存儲在根元素左邊。集合倒序

3.返回+1,集合怎么存就怎么取*/

import java.util.TreeSet;
import net.allidea.bean.Person;
public class Demo3_TreeSet {
    public static void main(String[] args) {
        TreeSet ts = new TreeSet<>();
        ts.add(new Person("張三",23));
        ts.add(new Person("李四",24));
        ts.add(new Person("李二",24));
        ts.add(new Person("王五",25));
        ts.add(new Person("趙六",46));
        ts.add(new Person("田七",17));
        
        System.out.println(ts);
    }

    private static void demo1() {
        TreeSet ts = new TreeSet<>();
        ts.add(1);
        ts.add(1);
        ts.add(3);
        ts.add(3);
        ts.add(2);
        
        System.out.println(ts);
    }
}
    //重寫Person文件中的compareTo
    @Override
    public int compareTo(Person o) {
        int num = this.age - o.age;                //年齡是比較的主要條件,姓名是次要條件
        return num == 0 ? this.name.compareTo(o.name) : num;
    }
12_TreeSet存儲自定義對象并遍歷練習(xí)1

A:案例演示

TreeSet存儲自定義對象并遍歷練習(xí)1(按照姓名排序)

    @Override
    //按照姓名排序
    public int compareTo(Person o) {
        int num = this.name.compareTo(o.name);    
        return num == 0 ? this.age - o.age : num;
    }
13_TreeSet存儲自定義對象并遍歷練習(xí)2

A:案例演示

TreeSet存儲自定義對象并遍歷練習(xí)2(按照姓名的長度排序)

    @Override
    //按照姓名長度排序
    public int compareTo(Person o) {
        int length = this.name.length() - o.name.length();                //比較長度為主要條件
        int num = length == 0 ? this.name.compareTo(o.name) : length;    //比較內(nèi)容為次要條件
        return num == 0 ? this.age - o.age : num;                        //比較年齡為次要條件
    }
14_TreeSet保證元素唯一和比較器排序的原理及代碼實(shí)現(xiàn)

A:案例演示

TreeSet保證元素唯一和比較器排序的原理及代碼實(shí)現(xiàn)

    public static void main(String[] args) {
        //將字符串按照長度排序
        //Comparator c = new CompareBylen();父類指向子類
        TreeSet ts = new TreeSet<>(new CompareByLen());   
        ts.add("aaaaa");
        ts.add("z");
        ts.add("wc");
        ts.add("nab");
        ts.add("cba");
        
        System.out.println(ts);
    }
//比較器
class CompareByLen /*extends Object*/ implements Comparator {
    @Override
    public int compare(String s1, String s2) {    //按照字符串長度比較
        int num = s1.length() - s2.length();    //長度為主要條件    
        return num == 0 ? s1.compareTo(s2) : num;//內(nèi)容為次要條件
    }
}
15_TreeSet原理

1.特點(diǎn)

TreeSet是用來排序的, 可以指定一個順序, 對象存入之后會按照指定的順序排列

2.使用方式

a.自然順序(Comparable)

TreeSet類的add()方法中會把存入的對象提升為Comparable類型

調(diào)用對象的compareTo()方法和集合中的對象比較

根據(jù)compareTo()方法返回的結(jié)果進(jìn)行存儲

b.比較器順序(Comparator)

創(chuàng)建TreeSet的時(shí)候可以制定 一個Comparator

如果傳入了Comparator的子類對象, 那么TreeSet就會按照比較器中的順序排序

add()方法內(nèi)部會自動調(diào)用Comparator接口中compare()方法排序

調(diào)用的對象是compare方法的第一個參數(shù),集合中的對象是compare方法的第二個參數(shù)

c.兩種方式的區(qū)別

TreeSet構(gòu)造函數(shù)什么都不傳, 默認(rèn)按照類中Comparable的順序(沒有就報(bào)錯ClassCastException)

TreeSet如果傳入Comparator, 就優(yōu)先按照Comparator進(jìn)行排序

16_練習(xí):集合中有無序且重復(fù)的字符串,定義方法,讓其有序(字典順序)且不去重排列。

A:匿名內(nèi)部類

就是內(nèi)部類的簡化寫法。

B:前提:存在一個類或者接口

這里的類可以是具體類也可以是抽象類。

C:格式:

new 接口名(){重寫方法;}

D:本質(zhì)是什么呢?

是一個繼承了該類或者實(shí)現(xiàn)了該接口的子類匿名對象。

import java.util.List;
import java.util.TreeSet;
import java.util.ArrayList;
import java.util.Comparator;

public class Demo4 {
    public static void main(String[] args) {
        //1.定義一個List集合,并存儲重復(fù)的無序的字符串
        ArrayList list = new ArrayList<>();
        list.add("aaaa");
        list.add("g");
        list.add("bb");
        list.add("all");
        list.add("ccc");
        list.add("idea");
        list.add("bb");
        list.add("aaaa");
        
        sort(list);                    //2.定義方法對其排序保留重復(fù)
        System.out.println(list);    //3.打印List集合
    }

    private static void sort(List list) {
        //1.創(chuàng)建TreeSet集合對象,因?yàn)镾tring本身就具備比較功能,但是重復(fù)不會保留,所以我們用比較器
        TreeSet ts = new TreeSet<>(new Comparator() {    //匿名內(nèi)部類的方法

            @Override
            public int compare(String s1, String s2) {
                int num = s1.compareTo(s2);                            //比較內(nèi)容
                return num == 0 ? 1 : num;
            }});
        //2.將List集合中所有的元素添加到TreeSet集合中,對其排序,保留重復(fù)
        ts.addAll(list);
        //3.清空list集合
        list.clear();
        //4.將TreeSet集合中排好序的元素添加到list中
        list.addAll(ts);
    }
}
17_練習(xí)

從鍵盤接收一個字符串, 程序?qū)ζ渲兴凶址M(jìn)行排序,例如鍵盤輸入: helloworld程序打印:dehllloorw

import java.util.Comparator;
import java.util.Scanner;
import java.util.TreeSet;

public class Demo5 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("請輸入一個字符串:");
        String line = sc.nextLine();
        
        //2.將字符串轉(zhuǎn)換為字符數(shù)組
        char[] arr = line.toCharArray();
        
        //3.定義TreeSet集合,傳入比較器對字符排序,并保留重復(fù)
        TreeSet ts = new TreeSet<>(new Comparator() {

            @Override
            public int compare(Character c1, Character c2) {
//                int num = c1 - c2;                //自動拆箱
                int num = c1.compareTo(c2);
                return num == 0 ? 1 : num;
            }});
        //4.遍歷字符數(shù)組,將每一個字符存儲在TreeSet集合中
        for (char c : arr) {
            ts.add(c);                            //自動裝箱
        }
        //5.遍歷TreeSet打印每一個字符
        for(Character c : ts) {
            System.out.print(c);
        }
    }
}
18_練習(xí)

程序啟動后, 可以從鍵盤輸入接收多個整數(shù), 直到輸入quit時(shí)結(jié)束輸入. 把所有輸入的整數(shù)倒序排列打印.

import java.util.Comparator;
import java.util.Scanner;
import java.util.TreeSet;
public class Demo6 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);        //1.創(chuàng)建Scanner對象,鍵盤錄入。
        //2.創(chuàng)建TreeSet集合對象,TreeSet傳入比較器。
        TreeSet ts = new TreeSet<>(new Comparator() {        //將比較器傳給TreeSet的構(gòu)造方法

            @Override
            public int compare(Integer i1, Integer i2) {
                int num = i2 - i1;                            //自動拆箱
//                int num = i2.csompareTo(i1);
                return num == 0 ? 1 : num;
            }});
        System.out.println("請輸入一個整數(shù):");
        //3.無限循環(huán)接收整數(shù),遇到Quit退出,用字符串的形式接收。
        while(true) {
            String line = sc.nextLine();//將鍵盤錄入的字符串存儲在line中
            if("quit".equals(line)) {//如果字符串常量和變量比較,常量放前面,這樣不會出現(xiàn)空指針異常,變量里面可能存儲null
                break;
            }
            //4.判斷quit就退出,不是就將其轉(zhuǎn)換為Integer,并添加到集合中
            Integer i =  Integer.parseInt(line);//將數(shù)字字符串轉(zhuǎn)換成數(shù)字
            ts.add(i);
        }
        //5.遍歷TreeSet集合并打印每一個元素。
        for (Integer integer : ts) {
            System.out.print(integer);
        }
    }
}
19_練習(xí)

需求:鍵盤錄入5個學(xué)生信息(姓名,語文成績,數(shù)學(xué)成績,英語成績),按照總分從高到低輸出到控制臺。

//1.定義一個學(xué)生類
//a.成員變量:姓名,語文成績,數(shù)學(xué)成績,英語成績,總成績
//b.成員方法:空參有參構(gòu)造,toString方法,在遍歷集合中的Student對象,打印對象引用的時(shí)候會顯示屬性值
public class Student {
    private String name;
    private int chinese;
    private int math;
    private int english;
    private int sum;
    public Student() {
        super();
        
    }
    public Student(String name, int chinese, int math, int english) {
        super();
        this.name = name;
        this.chinese = chinese;
        this.math = math;
        this.english = english;
        this.sum = this.chinese + this.math + this.english;
    }
    public int getSum() {
        return sum;
    }
    
    public String toString() {
        return name + "," + chinese + "," + math + "," + english + "," + sum;
    }
}
import java.util.Comparator;
import java.util.Scanner;
import java.util.TreeSet;

public class Demo7 {
    public static void main(String[] args) {
        //2.鍵盤錄入需要Scanner,創(chuàng)建鍵盤錄入對象
        Scanner sc = new Scanner(System.in);
        System.out.println("請輸入一個學(xué)生成績:姓名,語文成績,數(shù)學(xué)成績,英語成績");
        // 3.創(chuàng)建TreeSet集合對象,在TreeSet的構(gòu)造函數(shù)中傳入比較器,按照總分比較
        TreeSet ts = new TreeSet<>(new Comparator() {

            @Override
            public int compare(Student s1, Student s2) {
                int num = s2.getSum() - s1.getSum();
                return num == 0 ? 1 : num;
            }});
        //4.錄入五個學(xué)生,以集合中的學(xué)生個數(shù)為判斷條件,如果size是小于5就進(jìn)行存儲
        while(ts.size() < 5) {
            // 5.將錄入的字符串切割,用逗號切割,會返回一個字符串?dāng)?shù)組,將字符串?dāng)?shù)組中從第二個元素開始轉(zhuǎn)換成int數(shù)
            String line = sc.nextLine();
            String[] arr = line.split(",");
            
            int chinese = Integer.parseInt(arr[1]);
            int math = Integer.parseInt(arr[2]);
            int english = Integer.parseInt(arr[3]);            
            //6.將轉(zhuǎn)換后的結(jié)果封裝成Student對象,將Student添加到TreeSet集合中
            ts.add(new Student(arr[0], chinese, math, english));
        }
         //7.遍歷TreeSet集合打印每一個Student對象
        System.out.println("排序后的學(xué)生信息:");
        for (Student s : ts) {
            System.out.println(s);
        }
    }
}
20_總結(jié)

1.List

a.普通for循環(huán), 使用get(int index)逐個獲取 (Set沒有,因?yàn)闆]有索引)

b.調(diào)用iterator()方法得到Iterator, 使用hasNext()和next()方法

c.增強(qiáng)for循環(huán), 只要可以使用Iterator的類都可以用

d.Vector集合可以使用Enumeration的hasMoreElements()和nextElement()方法

2.Set

a.調(diào)用iterator()方法得到Iterator, 使用hasNext()和next()方法

b.增強(qiáng)for循環(huán), 只要可以使用Iterator的類都可以用

3.普通for循環(huán),迭代器,增強(qiáng)for循環(huán)不能在遍歷的過程中刪除

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/77216.html

相關(guān)文章

  • 我的阿里之路+Java面經(jīng)考點(diǎn)

    摘要:我的是忙碌的一年,從年初備戰(zhàn)實(shí)習(xí)春招,年三十都在死磕源碼,三月份經(jīng)歷了阿里五次面試,四月順利收到實(shí)習(xí)。因?yàn)槲倚睦砗芮宄?,我的目?biāo)是阿里。所以在收到阿里之后的那晚,我重新規(guī)劃了接下來的學(xué)習(xí)計(jì)劃,將我的短期目標(biāo)更新成拿下阿里轉(zhuǎn)正。 我的2017是忙碌的一年,從年初備戰(zhàn)實(shí)習(xí)春招,年三十都在死磕JDK源碼,三月份經(jīng)歷了阿里五次面試,四月順利收到實(shí)習(xí)offer。然后五月懷著忐忑的心情開始了螞蟻金...

    姘擱『 評論0 收藏0
  • 1、Map接口 2、模擬斗地主洗牌發(fā)牌

    摘要:中的集合稱為單列集合,中的集合稱為雙列集合。洗牌通過數(shù)字完成洗牌發(fā)牌發(fā)牌將每個人以及底牌設(shè)計(jì)為將最后張牌直接存放于底牌,剩余牌通過對取模依次發(fā)牌。存放的過程中要求數(shù)字大小與斗地主規(guī)則的大小對應(yīng)。 01Map集合概述 A:Map集合概述: 我們通過查看Map接口描述,發(fā)現(xiàn)Map接口下的集合與Collection接口下的集合,它們存儲數(shù)據(jù)的形式不同 ? a:Collection中的集...

    付倫 評論0 收藏0
  • Java編程基礎(chǔ)19——Map集合&斗地主案例

    摘要:使用默認(rèn)隨機(jī)源對指定列表進(jìn)行置換。將集合排序使用二分搜索法搜索指定列表,以獲得指定對象根據(jù)元素的自然順序,返回給定的最大元素。 1_Map集合概述和特點(diǎn) A:Map接口概述 查看API可以知道: 將鍵映射到值的對象 一個映射不能包含重復(fù)的鍵 每個鍵最多只能映射到一個值 B:Map接口和Collection接口的不同 Map是雙列的,Collection是單列的 Map...

    ygyooo 評論0 收藏0
  • Java? 教程(集合接口)

    集合接口 核心集合接口封裝了不同類型的集合,如下圖所示,這些接口允許獨(dú)立于其表示的細(xì)節(jié)來操縱集合,核心集合接口是Java集合框架的基礎(chǔ),如下圖所示,核心集合接口形成層次結(jié)構(gòu)。 showImg(https://segmentfault.com/img/bVbntJW?w=402&h=146); Set是一種特殊的Collection,SortedSet是一種特殊的Set,依此類推,另請注意,層次結(jié)構(gòu)...

    elisa.yang 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<