Group review
What is the main content of the collection ?
- The creation of each collection object (new)
- Add elements to the collection
- Take the element from the collection
- Ergodic set
The main set class :
- ArrayList
- LinkedList
- HashSet(HashSet Of key、 Stored in HashMap aggregate key The elements of need to be rewritten at the same time hashCode + equals Method )
- TreeSet
- HashMap
- Properties
- TreeMap
review List What the assembly needs to master
package se3.review;
import java.util.ArrayList;
import java.util.Iterator;
/** Need to master the content :
* 1. The creation of each collection object (new)
* 2. Add elements to the collection
* 3. Take the element from the collection
* 4. Ergodic set
*/
public class ArrayListTest {
public static void main(String[] args) {
// Create a collection object
ArrayList<String> list = new ArrayList<>();
// Additive elements
list.add(" Zhang San ");
list.add(" Li Si ");
list.add(" Wang Wu ");
// Take an element out of a collection .(List Sets have subscripts )
String firstElt = list.get(0);
System.out.println(firstElt);// Zhang San
// Traverse : Subscript mode
for (int i = 0; i < list.size(); i++) {
String elt = list.get(i);
System.out.print(elt + " ");
}
System.out.println();
// Traverse : Iterator mode ( General purpose , be-all Collection Can be used )
Iterator<String> it = list.iterator();
while (it.hasNext()){
System.out.print(it.next() + " ");
}
System.out.println();
// Traverse :foreach The way
for (String s : list){
System.out.print(s + " ");
}
/**
* The above three ways of traversing the output are the same
* Zhang San Li Si Wang Wu
*/
}
}
Be careful :LinkedList The content is the same as above (ArrayList Change it to LinkedList that will do )
review HashSet What needs to be mastered
package se3.review;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Objects;
import java.util.Set;
/** Need to master the content :
* 1. The creation of each collection object (new)
* 2. Add elements to the collection
* 3. Take the element from the collection
* 4. Ergodic set
* 5. test HashSet Set characteristics : Disorder cannot be repeated
*/
public class HashSetTest {
public static void main(String[] args) {
// Create a collection object
HashSet<String> set = new HashSet<>();
// Additive elements
set.add("abc");
set.add("def");
set.add("king");
//set Set elements cannot be indexed ( No subscript )
// Traverse : Iterator mode
Iterator<String> it = set.iterator();
while (it.hasNext()){
System.out.print(it.next() + " ");
}
System.out.println();
//foreach The way
for (String s : set){
System.out.print(s + " ");
}
System.out.println();
// test HashSet Set characteristics
set.add("king");
set.add("king");
set.add("king");
System.out.println(set.size());//3( Back 3 individual King They didn't add in )
set.add("1");
set.add("10");
set.add("2");
for (String s : set){
System.out.print(s + " ");
}//1 2 abc def king 10
System.out.println();
// Create set , Storage Student data
Set<Student> students = new HashSet<>();
Student s1 = new Student(1," Zhang San ");
Student s2 = new Student(2," Li Si ");
Student s3 = new Student(1," Zhang San ");
students.add(s1);
students.add(s2);
students.add(s3);
System.out.println(students.size());//2
// Traverse
for (Student stu : students){
System.out.println(stu);
}
/**
* Student { Student number =2, full name =' Li Si '}
* Student { Student number =1, full name =' Zhang San '}
*/
}
}
class Student{
int no;
String name;
public Student() {
}
public Student(int no, String name) {
this.no = no;
this.name = name;
}
@Override
public String toString() {
return " Student {" +
" Student number =" + no +
", full name ='" + name + '\'' +
'}';
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Student student = (Student) o;
return no == student.no &&
Objects.equals(name, student.name);
}
@Override
public int hashCode() {
return Objects.hash(no, name);
}
}
review TreeSet What needs to be mastered
package se3.review;
import java.util.Comparator;
import java.util.Iterator;
import java.util.TreeSet;
/** Need to master the content :
* 1. The creation of each collection object (new)
* 2. Add elements to the collection
* 3. Take the element from the collection
* 4. Ergodic set
* 5. test TreeSet aggregate :TreeSet The elements in a collection are sortable , Non repeatable
* 6. test TreeSet The type stored in the collection is custom
* 7. Test implementation Comparable How to interface
* 8. Test implementation Compa How to interface ( And the way to anonymous inner classes )
*/
public class TreeSetTest {
public static void main(String[] args) {
// Create set
TreeSet<Integer> ts = new TreeSet<>();
// Additive elements
ts.add(1);
ts.add(100);
ts.add(10);
ts.add(10);
ts.add(10);
ts.add(10);
ts.add(0);
// Traverse ( iterator )
Iterator<Integer> it = ts.iterator();
while (it.hasNext()){
System.out.print(it.next() + " ");
}//0 1 10 100
System.out.println();
// Traverse (foreach)
for (Integer i : ts){
System.out.print(i + " ");
}//0 1 10 100
System.out.println();
//TreeSet Collection to store custom types ( The first way )
TreeSet<A> atree = new TreeSet<>();
atree.add(new A(100));
atree.add(new A(200));
atree.add(new A(500));
atree.add(new A(400));
atree.add(new A(300));
atree.add(new A(1000));
// Traverse
for (A a : atree){
System.out.print(a + " ");
}//A{i=100} A{i=200} A{i=300} A{i=400} A{i=500} A{i=1000}
System.out.println();
//TreeSet Collection to store custom types ( The second way , The comparator )
TreeSet<B> btree = new TreeSet<>(new BComparator());
btree.add(new B(500));
btree.add(new B(100));
btree.add(new B(200));
btree.add(new B(600));
btree.add(new B(300));
btree.add(new B(50));
for (B b : btree){
System.out.print(b + " ");
}//B{i=50} B{i=100} B{i=200} B{i=300} B{i=500} B{i=600}
System.out.println();
// The anonymous inner class way of comparator
TreeSet<C> ctree = new TreeSet<>(new Comparator<C>() {
@Override
public int compare(C o1, C o2) {
return o1.i - o2.i;
}
});
ctree.add(new C(700));
ctree.add(new C(800));
ctree.add(new C(200));
ctree.add(new C(600));
ctree.add(new C(900));
ctree.add(new C(90));
for (C c : ctree){
System.out.print(c + " ");
}//C{i=90} C{i=200} C{i=600} C{i=700} C{i=800} C{i=900}
}
}// The first way : Realization Comparable Interface
class A implements Comparable<A>{
int i;
public A(int i) {
this.i = i;
}
@Override
public String toString() {
return "A{" +
"i=" + i +
'}';
}
@Override
public int compareTo(A o) {
return this.i - o.i;
}
}
// The second way : Delivery comparator
class B {
int i;
public B(int i) {
this.i = i;
}
@Override
public String toString() {
return "B{" +
"i=" + i +
'}';
}
}
// The comparator
class BComparator implements Comparator<B>{
@Override
public int compare(B o1, B o2) {
return o1.i - o2.i;
}
}
class C {
int i;
public C(int i) {
this.i = i;
}
@Override
public String toString() {
return "C{" +
"i=" + i +
'}';
}
}
Be careful :TreeMap The content is the same as above
review HashMap What needs to be mastered
package se3.review;
import java.util.HashMap;
import java.util.Hashtable;
import java.util.Map;
import java.util.Set;
/** Need to master the content :
* 1. The creation of each collection object (new)
* 2. Add elements to the collection
* 3. Take the element from the collection
* 4. Ergodic set
*/
public class HashMapTest {
public static void main(String[] args) {
// Create set
Map<Integer,String> map = new HashMap<>();
// Additive elements
map.put(1," Zhang San ");
map.put(9," Li San ");
map.put(10," Wang Wu ");
map.put(2," Zhao Liu ");
map.put(2," APO ");//key Can be repeated ,value Will be covered
// Get the number of elements
System.out.println(map.size());//4
// take key yes 2 The elements of
System.out.println(map.get(2));// APO
// Traverse Map Assembly is important , You have to be able to
// The first way : Get all of it first key, Traverse key When , adopt key obtain value
Set<Integer> keys = map.keySet();
for (Integer key : keys){
System.out.println(key + "=" + map.get(key));
}
/**
* 1= Zhang San
* 2= APO
* 9= Li San
* 10= Wang Wu
*/
System.out.println("##################################");
// The second way : take Map Set to Set aggregate ,Set Each element in the set is Node
// This Node Node has key and value
Set<Map.Entry<Integer,String>> nodes = map.entrySet();
for (Map.Entry<Integer,String> node : nodes){
System.out.println(node.getKey() + "=" + node.getValue());
}/**
* 1= Zhang San
* 2= APO
* 9= Li San
* 10= Wang Wu
*/
}
}
review Properties What needs to be mastered
package se3.review;
import java.util.Properties;
/** Need to master the content :
* 1. The creation of each collection object (new)
* 2. Add elements to the collection
* 3. Take the element from the collection
*/
public class PropertiesTest {
public static void main(String[] args) {
// Create objects
Properties pro = new Properties();
// save
pro.setProperty("username"," Zhang San ");
pro.setProperty("password","123");
// take
String username = pro.getProperty("username");
String password = pro.getProperty("password");
System.out.println(username);// Zhang San
System.out.println(password);//123
}
}