Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
ÉîÈëÀí½âJavaÖеÄÈÝÆ÷
 
×÷Õߣº°²¾²µÄ¼¼Êõ¿Ø
  4681  次浏览      27
 2019-12-26
 
±à¼­ÍƼö:
ÎÄÕÂÖ÷Ҫͨ¹ýʾÀýÑÝʾ½éÉÜÁËÈÝÆ÷ÓëÊý×éµÄ¹ØÏµÒÔ¼°ÈÝÆ÷³£Óõö·½·¨,ÈÝÆ÷·ÖΪSet¼¯¡¢ListÁÐ±í¡¢MapÓ³Éä,¹þÏ£³åÍ»µÄÏà¹Ø¸ÅÄî ,Ï£Íû¶ÔÄúµÄѧϰÓÐËù°ïÖú¡£
±¾ÎÄÀ´×ÔÓÚcsdn£¬ÓÉ»ðÁú¹ûÈí¼þAlice±à¼­¡¢ÍƼö¡£

1¡¢ÈÝÆ÷µÄ¸ÅÄî

ÔÚJavaµ±ÖУ¬Èç¹ûÓÐÒ»¸öÀàרÃÅÓÃÀ´´æ·ÅÆäËüÀàµÄ¶ÔÏó£¬Õâ¸öÀà¾Í½Ð×öÈÝÆ÷£¬»òÕ߾ͽÐ×ö¼¯ºÏ£¬¼¯ºÏ¾ÍÊǽ«Èô¸ÉÐÔÖÊÏàͬ»òÏà½üµÄÀà¶ÔÏó×éºÏÔÚÒ»Æð¶øÐγɵÄÒ»¸öÕûÌå

2¡¢ÈÝÆ÷ÓëÊý×éµÄ¹ØÏµ

Ö®ËùÒÔÐèÒªÈÝÆ÷£º

1¡¢Êý×éµÄ³¤¶ÈÄÑÒÔÀ©³ä

2¡¢Êý×éÖÐÊý¾ÝµÄÀàÐͱØÐëÏàͬ

ÈÝÆ÷ÓëÊý×éµÄÇø±ðÓëÁªÏµ£º

1¡¢ÈÝÆ÷²»ÊÇÊý×飬²»ÄÜͨ¹ýϱêµÄ·½Ê½·ÃÎÊÈÝÆ÷ÖеÄÔªËØ

2¡¢Êý×éµÄËùÓй¦ÄÜͨ¹ýArraylistÈÝÆ÷¶¼¿ÉÒÔʵÏÖ£¬Ö»ÊÇʵÏֵķ½Ê½²»Í¬

3¡¢Èç¹û·ÇÒª½«ÈÝÆ÷µ±×öÒ»¸öÊý×éÀ´Ê¹Óã¬Í¨¹ýtoArray·½·¨·µ»ØµÄ¾ÍÊÇÒ»¸öÊý×é

ʾÀý³ÌÐò£º

package IT;
import java.util.ArrayList;
import java.util.Iterator;
//Êý×éµÄËùÓй¦ÄÜͨ¹ýArrayListÈÝÆ÷¶¼¿ÉÒÔʵÏÖ£¬Ö»ÊÇʵÏֵķ½Ê½²»Í¬
public class App
{
public static void main(String[] args)
{
ArrayList<Integer> arrayList = new ArrayList<Integer>();
arrayList.add(12);
arrayList.add(10);
arrayList.add(35);
arrayList.add(100);

Iterator<Integer> iterator = arrayList.iterator();//»ñÈ¡ÈÝÆ÷µÄµü´úÆ÷
while(iterator.hasNext())
{
Integer value = iterator.next();//»ñÈ¡µ±Ç°ÓαêÓұߵÄÔªËØ£¬Í¬Ê±ÓαêÓÒÒÆ-->
System.out.println(value);
}
System.out.println("ͨ¹ýArrayListÈÝÆ÷»ñȡһ¸öÊý×éarr£º");
Object[] arr = arrayList.toArray();
for(int i=0;i<arr.length;i++)
{
System.out.println(arr[i]);
}
}
}

Êä³ö½á¹û£º

12
10
35
100
ͨ¹ýArrayListÈÝÆ÷»ñȡһ¸öÊý×éarr£º
12
10
35
100

3¡¢ÈÝÆ÷³£Óõö·½·¨

boolean add(Object obj):ÏòÈÝÆ÷ÖÐÌí¼ÓÖ¸¶¨µÄÔªËØ

Iterator iterator£¨£©£º·µ»ØÄܹ»±éÀúµ±Ç°¼¯ºÏÖÐËùÓÐÔªËØµÄµü´úÆ÷

Object[] toArray():·µ»Ø°üº¬´ËÈÝÆ÷ÖÐËùÓÐÔªËØµÄÊý×é¡£

Object get£¨int index£©£º»ñȡϱêΪindexµÄÄǸöÔªËØ

Object remove£¨int index£©£ºÉ¾³ýϱêΪindexµÄÄǸöÔªËØ

Object set£¨int index,Object element£©£º½«Ï±êΪindexµÄÄǸöÔªËØÖÃΪelement

Object add£¨int index,Object element£©£ºÔÚϱêΪindexµÄλÖÃÌí¼ÓÒ»¸ö¶ÔÏóelement

Object put(Object key,Object value):ÏòÈÝÆ÷ÖÐÌí¼ÓÖ¸¶¨µÄÔªËØ

Object get£¨Object key£©£º»ñÈ¡¹Ø¼ü×ÖΪkeyµÄÄǸö¶ÔÏó

int size():·µ»ØÈÝÆ÷ÖеÄÔªËØÊý

10ʵÀý³ÌÐò£º

package IT;
import java.util.ArrayList;
public class App
{
public static void main(String[] args)
{
ArrayList<Integer> arrayList = new ArrayList<Integer>();
arrayList.add(12);
arrayList.add(10);
arrayList.add(35);
arrayList.add(100);
System.out.println("Ô­ÈÝÆ÷ÖеÄÔªËØÎª:");
System.out.println(arrayList);
System.out.println("\n");

/*******ÖØÖÃset£¨int index,Object element£©*******/
System.out.println("½«Ï±êΪ1λÖõÄÔªËØÖÃΪ20,½«Ï±êΪ2λÖõÄÔªËØÖÃΪ70");
arrayList.set(1, 20);
arrayList.set(2, 70);
System.out.println("ÖØÖÃÖ®ºóÈÝÆ÷ÖеÄÔªËØÎª:");
System.out.println(arrayList);
System.out.println("\n");

/*******Öмä²å¶Óadd£¨int index,Object element£©*******/
System.out.println("ÔÚϱêΪ1µÄλÖòåÈëÒ»¸öÔªËØ,-----²åÈëÔªËØ£º´ËʱÈÝÆ÷ºóÃæµÄÔªËØÕûÌåÏòºóÒÆ¶¯");
arrayList.add(1, 80);//ÔÚϱêΪ1µÄλÖòåÈëÒ»¸öÔªËØ,´ËʱÈÝÁ¿¼Ó1,-----λÖúóÃæµÄÔªËØÕûÌåÏòºóÒÆ¶¯
System.out.println("²åÈëÖ®ºóÈÝÆ÷ÖеÄÔªËØÎª:");
System.out.println(arrayList);
System.out.println("²åÈëÖ®ºóÈÝÆ÷ÖеÄÈÝÁ¿Îª:");
System.out.println(arrayList.size());
System.out.println("\n");


/*******Öмäɾ³ýÔªËØremove£¨int index£©*******/
System.out.println("½«Ï±êΪ3λÖõÄÔªËØ70ɾ³ý,-----ɾ³ýÔªËØ:´ËʱÈÝÆ÷λÖúóÃæµÄÔªËØÕûÌåÏòÇ°ÒÆ");
arrayList.remove(3);
System.out.println("ɾ³ýÖ®ºóÈÝÆ÷ÖеÄÔªËØÎª:");
System.out.println(arrayList);
System.out.println("ɾ³ýÖ®ºóÈÝÆ÷ÖеÄÈÝÁ¿Îª:");
System.out.println(arrayList.size());

}
}

ÔËÐнá¹û£º

Ô­ÈÝÆ÷ÖеÄÔªËØÎª:

[12, 10, 35, 100]½«Ï±êΪ1λÖõÄÔªËØÖÃΪ20,½«Ï±êΪ2λÖõÄÔªËØÖÃΪ70

ÖØÖÃÖ®ºóÈÝÆ÷ÖеÄÔªËØÎª:

[12, 20, 70, 100]ÔÚϱêΪ1µÄλÖòåÈëÒ»¸öÔªËØ,-----²åÈëÔªËØ£º´ËʱÈÝÆ÷ºóÃæµÄÔªËØÕûÌåÏòºóÒÆ¶¯

²åÈëÖ®ºóÈÝÆ÷ÖеÄÔªËØÎª:

[12, 80, 20, 70, 100]

²åÈëÖ®ºóÈÝÆ÷ÖеÄÈÝÁ¿Îª:

5½«Ï±êΪ3λÖõÄÔªËØ70ɾ³ý,-----ɾ³ýÔªËØ:´ËʱÈÝÆ÷λÖúóÃæµÄÔªËØÕûÌåÏòÇ°ÒÆ

ɾ³ýÖ®ºóÈÝÆ÷ÖеÄÔªËØÎª:

[12, 80, 20, 100]

ɾ³ýÖ®ºóÈÝÆ÷ÖеÄÈÝÁ¿Îª:

4¡¢ÈÝÆ÷µÄ·ÖÀà

ÈÝÆ÷·ÖΪSet¼¯¡¢ListÁÐ±í¡¢MapÓ³Éä

Set¼¯ºÏ£ºÓÉÓÚÄÚ²¿´æ´¢½á¹¹µÄÌØµã£¬Set¼¯ºÏÖв»Çø·ÖÔªËØµÄ˳Ðò£¨¼´Ê¹´æ·ÅµÄÀàʵÏÖÁËcompareTo·½·¨£¬Ò²ÊÇûÓõģ©£¬²»ÔÊÐí³öÏÖÖØ¸´µÄÔªËØ£¨Óû§×Ô¶¨ÒåµÄÀàÓеÄʱºòÐèҪʵÏÖÏàÓ¦·½·¨£©£¬TreeSetÈÝÆ÷ÌØÊâ£¬ÔªËØ·Å½øÈ¥µÄʱºò×ÔÈ»¶øÈ»¾ÍÓÐ˳ÐòÁË£¬SetÈÝÆ÷¿ÉÒÔÓëÊýѧÖеļ¯ºÏÏà¶ÔÓ¦£ºÏàͬµÄÔªËØ²»»á±»¼ÓÈë¡£

ListÁÐ±í£ºÓÉÓÚÄÚ²¿´æ´¢½á¹¹µÄÌØµã£¬List¼¯ºÏÖÐÇø·ÖÔªËØµÄ˳Ðò£¬ÇÒÔÊÐí°üº¬Öظ´µÄÔªËØ¡£List¼¯ºÏÖеÄÔªËØ¶¼¶ÔÓ¦Ò»¸öÕûÊýÐ͵ÄÐòºÅ¼ÇÔØÆäÔÚÈÝÆ÷ÖеÄλÖ㬿ÉÒÔ¸ù¾ÝÐòºÅ´æÈ¡ÈÝÆ÷ÖеÄÔªËØ¡ªÓÐÐò£¬¿ÉÒÔÖØ¸´

MapÓ³É䣺ÓÉÓÚÄÚ²¿´æ´¢½á¹¹µÄÌØµã£¬Ó³ÉäÖв»Äܰüº¬Öظ´µÄ¼üÖµ£¬Ã¿¸ö¼ü×î¶àÖ»ÄÜÓ³ÉäÒ»¸öÖµ£¬·ñÔò»á³öÏÖ¸²¸ÇµÄÇé¿ö(ºóÃæµÄvalueÖµ»á½«Ç°ÃæµÄvalueÖµ¸²¸Çµô)£¬MapÊÇÒ»ÖְѼü¶ÔÏóºÍÖµ¶ÔÏó½øÐÐÓ³ÉäµÄ¼¯ºÏ£¬¼´MapÈÝÆ÷ÖмÈÒª´æ·ÅÊý¾Ý±¾Éí£¬Ò²Òª´æ·Å¹Ø¼ü×Ö:ÏàͬµÄÔªËØ»á±»¸²¸Ç

×¢Ò⣺¶ÔÓÚSetºÍMapÀ´Ëµ,ÔªËØ·Å½øÈ¥Ö®ºóÊÇûÓÐ˳ÐòµÄ£¬Èç¹ûÏ£ÍûÔªËØ·Å½øÈ¥Ö®ºóÊÇÓÐ˳ÐòµÄ£¬¿ÉÒÔÓÃtreeSetºÍtreeMap´æ´¢Êý¾Ý¡£

ʵÀý³ÌÐò£º

var set2 = mutable.Set.empty[Int]
set2 += 10
set2 ++= List(50,100,200)
set2 += 500
println("SetÊä³öµÄ½á¹û£º")
println(set2)
var map3 = mutable.Map.empty[String,Double]
map3 += "Spark"->90.0
map3 += "Hadoop"->80.0
map3 ++= List("Scala"->100.0,"Java"->60.0)
println("MapÊä³öµÄ½á¹û£º")
println(map3)

ÔËÐнá¹û£º

SetÊä³öµÄ½á¹û£º
Set(100, 50, 500, 10, 200)
MapÊä³öµÄ½á¹û£º
Map(Hadoop -> 80.0, Spark -> 90.0, Scala -> 100.0, Java -> 60.0)

ʵÀý³ÌÐò£º

var treeSet = TreeSet(10,20,30,90,100,200,50)
println(treeSet)
/*¼üÖµ¶ÔÅÅÐòÊǸù¾ÝkeyµÄÖµ½øÐÐÅÅÐòµÄ,ûÓÐvalueµÄÊÂÇé,ÈÃÎÒÁªÏëµ½ÁËMapReduceÖÐÅÅÐòµÄʱºòÖ®ËùÒÔ¸ù¾Ýk2
¶ø²»ÊÇv2µÄÖµ½øÐÐÅÅÐò,ÕâÊÇÒòΪ¹þÏ£Ó³ÉäÄÚ²¿¾ö¶¨µÄ£¬¶ø²»ÊÇMapReduce¾ö¶¨µÄ
ºÇºÇ£¡×¢Ò⣺ÅÅÐòÇø·Ö´óСдµÄŶ£¡£¡£¡*/
var treeSet2 = TreeSet[String]("Spark","Anang","Baby","Hello")
println(treeSet2)
var treeMap = TreeMap[String,Integer]("Java"->100,"Scala"->88,"Python"->60,
"Anglebaby"->500)
println(treeMap)

ÔËÐнá¹û£º

TreeSet(10, 20, 30, 50, 90, 100, 200)
TreeSet(Anang, Baby, Hello, Spark)
Map(Anglebaby -> 500, Java -> 100, Python -> 60, Scala -> 88)

ʾÀý³ÌÐò£º

class Student implements Comparable<Object>
{
public int id;
public String nameString;

public Student(int id,String name)
{
this.id = id;
this.nameString = name;
}


@Override
public String toString()
{
return this.id + " " + this.nameString;
}


@Override
public int compareTo(Object obj)
{
Student stu = (Student)obj;
if (this.id > stu.id)
{
return 1;
}
else if (this.id == stu.id)
{
return 0;
}
else {
return -1;
}
}
}public class Test_ArrayList_1
{
public static void main(String[] args)
{
HashSet<Integer> hashSet1 = new HashSet<Integer>();
hashSet1.add(100);
hashSet1.add(200);
hashSet1.add(200);
hashSet1.add(400);
hashSet1.add(10);
hashSet1.add(20);
hashSet1.add(8000);
hashSet1.add(1000);
hashSet1.add(2000);
hashSet1.add(2000);
hashSet1.add(4000);
hashSet1.add(100);
hashSet1.add(200);
hashSet1.add(8000);
for (Integer integer : hashSet1)
{
System.out.println(integer); //´òÓ¡³öµÄÀ಻º¬ÓÐÖØ¸´µÄÔªËØ
}

System.out.println("--------------------");


HashSet<Student> hashSet2 = new HashSet<Student>(); //´ËʱStudentÓÐÒ»¸öÎÊÌâ,ûÓÐʵÏÖequals·½·¨ºÍhashCode·½·¨.
hashSet2.add(new Student(1000, "wtt"));
hashSet2.add(new Student(2000, "wtt"));
hashSet2.add(new Student(3000, "wtt"));
hashSet2.add(new Student(3000, "wtt"));
hashSet2.add(new Student(100, "wtt"));
hashSet2.add(new Student(50, "wtt"));
hashSet2.add(new Student(10, "wtt"));

for (Student student : hashSet2)
{
System.out.println(student); //¾¡¹ÜStudentÀàʵÏÖÁËcompareTo·½·¨,Ò²ÊÇûÓõÄ,ÿ´Î´òÓ¡³öÔªËØµÄ˳ÐòÊDz»Ò»ÑùµÄ.
}

System.out.println("--------------------");

}
}
/*
* 1000
2000
100
4000
20
200
10
400
8000
--------------------
3000 wtt
1000 wtt
100 wtt
10 wtt
3000 wtt
2000 wtt
50 wtt

1065¡¢toString()·½·¨µÄʹÓ㺷²ÊǰÑÀà¶ÔÏó·Åµ½ÈÝÆ÷ÖУ¬ÏàÓ¦µÄÀà¶¼Ó¦¸ÃʵÏÖObjectÀàÖеÄtoString()·½·¨£»·²ÊÇJavaÖÐ×Ô´øµÄÊý¾ÝÀàÐÍ£¬¶¼ÒѾ­ÖØÐ´ÍêÁËtoString()·½·¨

ʵÀý1£º(Î´ÖØÐ´toString()·½·¨Ö®Ç°)

package IT;public class App
{
public static void main(String[] args)
{
//JavaÖÐ×Ô´øµÄÀà
System.out.println("-----·²ÊÇJavaÖÐ×Ô´øµÄÊý¾ÝÀàÐͶ¼ÒѾ­ÖØÐ´ÍêÁËtoString()·½·¨£¡---");
System.out.println(new Integer(2).toString());
System.out.println(new String("zhang").toString());
//Óû§×Ô¶¨ÒåµÄÀàStudent
System.out.println(new Student("zhangsan",99.8).toString());

}
}
class Student
{
public String name;
public double score;
public Student(String name,double score)
{
this.name = name;
this.score = score;
}
}

Êä³ö½á¹û£º

-----·²ÊÇJavaÖÐ×Ô´øµÄÊý¾ÝÀàÐͶ¼ÒѾ­ÖØÐ´ÍêÁËtoString()·½·¨£¡---
2
zhang
IT.Student@1af2f973

ʵÀý2£º(ÖØÐ´ÍêtoString()·½·¨Ö®ºó)

package IT;
import java.util.ArrayList;
public class App
{
public static void main(String[] args)
{
ArrayList<Student> arr = new ArrayList<Student>();
arr.add(new Student("zhangsan",89.8));
arr.add(new Student("lisi",90));
arr.add(new Student("wangwu",60.6));

System.out.println(arr);
}
}
class Student
{
public String name;
public double score;
public Student(String name,double score)
{
this.name = name;
this.score = score;
}
public String toString()
{
return this.name+"\t"+this.score;
}
}

Êä³ö½á¹û£º

[zhangsan 89.8, lisi 90.0, wangwu 60.6]

6¡¢Comparable½Ó¿ÚÖеÄcompareTo()·½·¨:·²ÊÇÐèÒª½øÐбȽÏÅÅÐòµÄÀà¶¼Ó¦¸ÃʵÏÖComparable½Ó¿ÚÖеÄcompareTo()·½·¨£»·²ÊǰÑÀà¶ÔÏó·Åµ½ÒÔÊ÷ΪÄÚ²¿½á¹¹µÄÈÝÆ÷Öж¼Ó¦¸ÃʵÏÖComparable½Ó¿ÚÖеÄcompareTo()·½·¨

ʵÀý1£º

package IT;
import java.util.ArrayList;
import java.util.Collections;
public class App
{
public static void main(String[] args)
{
ArrayList<Student> arr = new ArrayList<Student>();
arr.add(new Student("zhangsan",89.8));
arr.add(new Student("lisi",90));
arr.add(new Student("wangwu",60.6));
arr.add(new Student("wangting",85.6));

Collections.sort(arr);

for (Student student : arr)
{
System.out.println(student);
}

}
}
class Student implements Comparable<Student>
{
public String name;
public double score;
public Student(String name,double score)
{
this.name = name;
this.score = score;
}
public String toString()
{
return this.name+"\t"+this.score;
}
public int compareTo(Student obj)
{
return (int) (this.score - obj.score);//±È½ÏµÄ±ê׼Ϊscore½øÐÐÉýÐò
}
}

Êä³ö½á¹û£º

wangwu 60.6
wangting 85.6
zhangsan 89.8
lisi 90.0

ʵÀý2£º

package IT;import java.util.TreeSet;
public class App
{
public static void main(String[] args)
{
TreeSet<Student> treeSet = new TreeSet<Student>();
treeSet.add(new Student("wangwu",60.6));
treeSet.add(new Student("lisi",90.0));
treeSet.add(new Student("wangting",85.6));
treeSet.add(new Student("zhangsan",60.6));

for (Student student : treeSet)
{
System.out.println(student);
}

}
}
class Student implements Comparable<Student>
{
public String name;
public double score;
public Student(String name,double score)
{
this.name = name;
this.score = score;
}
public String toString()
{
return this.name+"\t"+this.score;
}
public int compareTo(Student obj)
{
if(this.score > obj.score)
return 1;
else
return -1;
}
}

Êä³ö½á¹û£º

zhangsan 60.6
wangwu 60.6
wangting 85.6
lisi 90.0

7¡¢·²ÊǰÑÀà¶ÔÏó·Åµ½ÒÔ¹þÏ£±íΪÄÚ²¿´æ´¢½á¹¹µÄÈÝÆ÷ÖУ¬ÏàÓ¦µÄÀà±ØÐëҪʵÏÖequals·½·¨ºÍhashCode·½·¨£¬ÕâÑù²Å·ûºÏ¹þÏ£±íÕæÊµµÄÂß¼­¹¦ÄÜ.£¨¶ÔÓÚÔÛÃÇ×Ô¼º¶¨ÒåµÄÀ࣬Èç¹ûÄãûÓÐÖØÐ´hashcode·½·¨£¬ÎÒÃÇ¿ÉÒÔͨ¹ýhashcode·½·¨»ñÈ¡¸Ã¶ÔÏóµÄÄÚ´æµØÖ·£©

¼ò¶øÑÔÖ®£º¹þÏ£±íÏȸù¾ÝËüµÄhashcode·½·¨ÌṩµÄ¹þÏ£ÂëÕÒµ½´æ´¢µÄλÖã¬ÔÚ´ÓλÖÃËù¹ØÁªµÄÁ´±íÀïÃæÑ°ÕÒÊÇ·ñÓÐÏàͬµÄ¶ÔÏó£¬Èç¹ûÓÐÏàͬµÄ¶ÔÏó£¬Ôò²»´æ·Å£¬Èç¹ûûÓУ¬Ôò´æ·Å½øÈ¥¡£

ʵÀý³ÌÐò1£º(ÎªÖØÐ´Ö®Ç°)

package IT;import java.util.HashMap;
import java.util.Iterator;
import java.util.Set;
public class App
{
public static void main(String[] args)
{
//JavaÖÐ×Ô´øµÄÊý¾ÝÀàÐÍ
System.out.println("ÏȲâÊÔJavaÖÐ×Ô´øµÄÊý¾ÝÀàÐÍ:");
HashMap<String, Double> hashMap1 = new HashMap<String,Double>();
hashMap1.put("zhangsan", 96.0);
hashMap1.put("lisi", 88.6);
hashMap1.put("wangwu", 98.6);
hashMap1.put("wangting", 87.5);
hashMap1.put("zhangsan", 96.0);
hashMap1.put("lisi", 88.6);
hashMap1.put("wangwu", 98.6);
hashMap1.put("wangting", 87.5);

Set<String> keySet = hashMap1.keySet();
Iterator<String> iterator = keySet.iterator();
while(iterator.hasNext())
{
String key = iterator.next();
System.out.println(key+"\t"+hashMap1.get(key));
}
System.out.println("JavaÖÐ×Ô´øµÄÊý¾ÝÀàÐÍ:ÏàͬµÄ¶ÔÏó»á¸²¸Ç£¡");
System.out.println("\n");
//Óû§×Ô¶¨ÒåµÄÊý¾ÝÀàÐÍ£ºÎªÖØÐ´Ö®Ç°
System.out.println("²âÊÔÓû§×Ô¶¨ÒåµÄÊý¾ÝÀàÐÍ--Î´ÖØÐ´Á½¸ö·½·¨Ö®Ç°:");
HashMap<Student, String> hashMap2 = new HashMap<Student,String>();
hashMap2.put(new Student("zhangsan",88.8), "beijing");
hashMap2.put(new Student("lisi",88.8), "beijing");
hashMap2.put(new Student("wangwu",66.9), "beijing");
hashMap2.put(new Student("zhangsan",88.8), "beijing");
hashMap2.put(new Student("lisi",88.8), "beijing");
hashMap2.put(new Student("wangwu",66.9), "beijing");
Set<Student> keySet2 = hashMap2.keySet();
Iterator<Student> iterator2 = keySet2.iterator();
while(iterator2.hasNext())
{
Student key = iterator2.next();
System.out.println(key+"\t"+hashMap2.get(key));
}
System.out.println("Èç¹ûûÓÐÖØÐ´:µ¼ÖÂÏàͬµÄ¶ÔÏ󲻻ᱻ¸²¸Ç!");


}
}
class Student implements Comparable<Student>
{
public String name;
public double score;
public Student(String name,double score)
{
this.name = name;
this.score = score;
}
public String toString()
{
return this.name+"\t"+this.score;
}
public int compareTo(Student obj)
{
if(this.score > obj.score)
return 1;
else
return -1;
}
}

Êä³ö½á¹û:

ÏȲâÊÔJavaÖÐ×Ô´øµÄÊý¾ÝÀàÐÍ:
wangting 87.5
wangwu 98.6
lisi 88.6
zhangsan 96.0
JavaÖÐ×Ô´øµÄÊý¾ÝÀàÐÍ:ÏàͬµÄ¶ÔÏó»á¸²¸Ç£¡²âÊÔÓû§×Ô¶¨ÒåµÄÊý¾ÝÀàÐÍ--ÎªÖØÐ´Á½¸ö·½·¨Ö®Ç°:
zhangsan 88.8 beijing
wangwu 66.9 beijing
lisi 88.8 beijing
wangwu 66.9 beijing
zhangsan 88.8 beijing
lisi 88.8 beijing

ʵÀý³ÌÐò2:ÖØÐ´Ö®ºó

package IT;import java.util.HashMap;
import java.util.Iterator;
import java.util.Set;
public class App
{
public static void main(String[] args)
{
//Óû§×Ô¶¨ÒåµÄÊý¾ÝÀàÐÍ£ºÎªÖØÐ´Ö®ºó
System.out.println("²âÊÔÓû§×Ô¶¨ÒåµÄÊý¾ÝÀàÐÍ--ÖØÐ´Á½¸ö·½·¨Ö®ºó:");
HashMap<Student, String> hashMap2 = new HashMap<Student,String>();
hashMap2.put(new Student("zhangsan",88.8), "beijing");
hashMap2.put(new Student("lisi",88.8), "beijing");
hashMap2.put(new Student("wangwu",66.9), "beijing");
hashMap2.put(new Student("zhangsan",88.8), "beijing");
hashMap2.put(new Student("lisi",88.8), "beijing");
hashMap2.put(new Student("wangwu",66.9), "beijing");
Set<Student> keySet2 = hashMap2.keySet();
Iterator<Student> iterator2 = keySet2.iterator();
while(iterator2.hasNext())
{
Student key = iterator2.next();
System.out.println(key+"\t"+hashMap2.get(key));
}
System.out.println("ÖØÐ´¹ýºó:ÏàͬµÄ¶ÔÏó»á±»¸²¸Ç!");


}
}
class Student implements Comparable<Student>
{
public String name;
public double score;
public Student(String name,double score)
{
this.name = name;
this.score = score;
}
public String toString()
{
return this.name+"\t"+this.score;
}
public int compareTo(Student obj)
{
if(this.score > obj.score)
return 1;
else
return -1;
}
@Override
public int hashCode()
{
return (int) (this.name.hashCode()*score);//±£Ö¤Ïàͬ¶ÔÏóÓ³É䵽ͬһ¸öË÷ÒýλÖÃ
}
@Override
public boolean equals(Object obj)
{
Student cc = (Student)obj;
return this.name==cc.name&&this.score==cc.score;
}
}

Êä³ö½á¹û:

²âÊÔÓû§×Ô¶¨ÒåµÄÊý¾ÝÀàÐÍ--ÖØÐ´Á½¸ö·½·¨Ö®ºó:

wangwu 66.9 beijing

zhangsan 88.8 beijing

lisi 88.8 beijing

ÖØÐ´¹ýºó:ÏàͬµÄ¶ÔÏó»á±»¸²¸Ç!

8¡¢ÖØÒªµÄÒ»¸öÂß¼­:Âß¼­ÉÏÀ´½²£¬Ö»ÒªÁ½¸ö¶ÔÏóµÄÄÚÈÝÏàͬ£¬ÆäµØÖ·(hashCode()·µ»ØÖµ)ÒÔ¼°ÕâÁ½¸ö¶ÔÏó¾ÍÓ¦¸ÃÏàͬ(equals())£¬

ʵÀý³ÌÐò(ÎªÖØÐ´Ö®Ç°):

package IT;
public class App
{
public static void main(String[] args)
{
//JavaÖÐ×Ô´øµÄÊý¾ÝÀàÐÍ
System.out.println(new Integer(1).equals(new Integer(1)));
System.out.println(new Integer(1).hashCode()==new Integer(1).hashCode());
System.out.println(new String("zhang").equals(new String("zhang")));
System.out.println(new String("zhang").hashCode()==new String("zhang").hashCode());

System.out.println("\n");

//Óû§×Ô¶¨ÒåµÄÊý¾ÝÀàÐÍ

System.out.println(new Student("zhangsan",98.8).equals(new Student("zhangsan",98.8)));
System.out.println(new Student("zhangsan",98.8).hashCode());
System.out.println(new Student("zhangsan",98.8).hashCode());

}
}
class Student implements Comparable<Student>
{
public String name;
public double score;
public Student(String name,double score)
{
this.name = name;
this.score = score;
}
public String toString()
{
return this.name+"\t"+this.score;
}
public int compareTo(Student obj)
{
if(this.score > obj.score)
return 1;
else
return -1;
}
}

Êä³ö½á¹û:

true
true
true
true


false
488676694
1211729930

ÖØÐ´Ö®ºó£º

package IT;
public class App
{
public static void main(String[] args)
{
System.out.println(new Student("zhangsan",98.8).equals(new Student("zhangsan",98.8)));
System.out.println(new Student("zhangsan",98.8).hashCode());
System.out.println(new Student("zhangsan",98.8).hashCode());


}
}
class Student implements Comparable<Student>
{
public String name;
public double score;
public Student(String name,double score)
{
this.name = name;
this.score = score;
}
public String toString()
{
return this.name+"\t"+this.score;
}
public int compareTo(Student obj)
{
if(this.score > obj.score)
return 1;
else
return -1;
}
@Override
public int hashCode()
{
return (int) (this.name.hashCode()*score);
}
@Override
public boolean equals(Object obj)
{
Student cc = (Student)obj;
return this.name==cc.name&&this.score==cc.score;
}
}

Êä³ö½á¹û:

true
-2147483648
-2147483648

ÉÏÃæµÄ5¡¢6¡¢7¡¢8¿ÉÒÔ¹é½áΪ4¸ö"·²ÊÇ"£¬1¸ö¡°Âß¼­¡±:

1¡¢·²ÊǰÑÀà¶ÔÏó·Åµ½ÈÝÆ÷ÖУ¬ÏàÓ¦µÄÀà¶¼Ó¦¸ÃʵÏÖObjectÀàÖеÄtoString()·½·¨£»

2¡¢·²ÊÇÐèÒª½øÐбȽÏÅÅÐòµÄÀà¶¼Ó¦¸ÃʵÏÖComparable½Ó¿ÚÖеÄcompareTo()·½·¨£»·²ÊǰÑÀà¶ÔÏó·Åµ½ÒÔÊ÷ΪÄÚ²¿½á¹¹µÄÈÝÆ÷Öж¼Ó¦¸ÃʵÏÖComparable½Ó¿ÚÖеÄcompareTo()·½·¨

3¡¢·²ÊǰÑÀà¶ÔÏó·Åµ½ÒÔ¹þÏ£±íΪÄÚ²¿´æ´¢½á¹¹µÄÈÝÆ÷ÖУ¬ÏàÓ¦µÄÀà±ØÐëҪʵÏÖequals·½·¨ºÍhashCode·½·¨£¬ÕâÑù²Å·ûºÏ¹þÏ£±íÕæÊµµÄÂß¼­¹¦ÄÜ.

4¡¢Âß¼­ÉÏÀ´½²£¬Ö»ÒªÁ½¸ö¶ÔÏóµÄÄÚÈÝÏàͬ£¬ÆäµØÖ·(hashCode()·µ»ØÖµ)ÒÔ¼°ÕâÁ½¸ö¶ÔÏó¾ÍÓ¦¸ÃÏàͬ(equals())¡£

9¡¢¹þÏ£³åÍ»µÄÏà¹Ø¸ÅÄî

±¾ÖÊÉϽ²¾ÍÊÇ:hash(¶ÔÏó1.hashCode())=hash2(¶ÔÏó2.hashCode())£¬¼´µÚÒ»¸ö¶ÔÏóµÄhashCode()·½·¨·µ»ØµÄ¹þÏ£ÂëÖµ´øÈëµ½¹þÏ£º¯ÊýºóµÃµ½µÄË÷ÒýλÖÃÓëµÚ¶þ¸ö¶ÔÏóµÄhashCode()·½·¨·µ»ØµÄ¹þÏ£ÂëÖµ´øÈëµ½¹þÏ£º¯ÊýºóµÃµ½µÄË÷ÒýλÖÃÏàͬ£¬Õâ¾ÍÊǹþÏ£³åÍ»¡£

×î³£¼ûµÄ¹þÏ£Ëã·¨ÊÇȡģ·¨¡£

ÏÂÃæ¼òµ¥½²½²È¡Ä£·¨µÄ¼ÆËã¹ý³Ì¡£

±ÈÈ磺Êý×éµÄ³¤¶ÈÊÇ5¡£ÕâʱÓÐÒ»¸öÊý¾ÝÊÇ6¡£ÄÇôÈçºÎ°ÑÕâ¸ö6´æ·Åµ½³¤¶ÈÖ»ÓÐ5µÄÊý×éÖÐÄØ¡£°´ÕÕȡģ·¨£¬¼ÆËã6£¥5£¬½á¹ûÊÇ1£¬ÄÇô¾Í°Ñ6·Åµ½Êý×éϱêÊÇ1µÄλÖá£ÄÇô£¬7

¾ÍÓ¦¸Ã·Åµ½2Õâ¸öλÖᣵ½´ËλÖ㬹þ˹³åÍ»»¹Ã»ÓгöÏÖ¡£Õâʱ£¬ÓиöÊý¾ÝÊÇ11£¬°´ÕÕȡģ·¨£¬11£¥5£½1£¬Ò²µÈÓÚ1¡£ÄÇôԭÀ´Êý×éϱêÊÇ1µÄµØ·½ÒѾ­ÓÐÊýÁË£¬ÊÇ6¡£ÕâʱÓÖ¼ÆËã³ö1Õâ¸öλÖã¬ÄÇôÊý×é1Õâ¸öλÖ㬾ͱØÐë´¢´æÁ½¸öÊýÁË¡£Õâʱ£¬¾Í½Ð¹þÏ£³åÍ»¡£³åͻ֮ºó¾ÍÒª°´ÕÕ˳ÐòÀ´´æ·ÅÁË¡£

Èç¹ûÊý¾ÝµÄ·Ö²¼±È½Ï¹ã·º£¬¶øÇÒ´¢´æÊý¾ÝµÄÊý×鳤¶È±È½Ï´ó¡£

ÄÇô¹þÏ£³åÍ»¾Í±È½ÏÉÙ¡£·ñÔò³åÍ»ÊǺܸߵġ£

10¡¢iterator½Ó¿ÚµÄ×÷ÓÃ

ÖØÒª·½·¨:

boolean hasNext():ÊÇÓÃÀ´Åжϵ±Ç°Óαê(µü´úÆ÷)µÄºóÃæÊÇ·ñ´æÔÚÔªËØ£¬Èç¹û´æÔÚ·µ»ØÕ棬·ñÔò·µ»Ø¼Ù

Object next()£ºÏÈ·µ»Øµ±Ç°ÓαêÓұߵÄÔªËØ£¬È»ºóÓαêºóÒÆÒ»¸öλÖÃ

void remove()£º²»ÍƼöʹÓÃiteratorµÄremove()·½·¨£¬¶øÊÇÍÆ¼öʹÓÃÈÝÆ÷×Ô´øµÄremove·½·¨¡£

ʵÀý³ÌÐò:

package IT;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Set;
public class App
{
public static void main(String[] args)
{
HashMap<String, Double> hashMap = new HashMap<String,Double>();
hashMap.put("zhangsan", 88.6);
hashMap.put("lisi", 69.0);
hashMap.put("wanqwu", 100.0);
hashMap.put("lisi", 69.0);

Set<String> keySet = hashMap.keySet();
Iterator<String> iterator = keySet.iterator();
while(iterator.hasNext())
{
String key = iterator.next();//»ñÈ¡µü´úÆ÷ÓұߵÄÔªËØ£¬Í¬Ê±ÓÒÒÆ
System.out.println(key+hashMap.get(key));
}


}
}

˼¿¼Ìâ:

package IT;import java.util.TreeSet;
public class App
{
public static void main(String[] args)
{
TreeSet<Student> treeSet = new TreeSet<Student>();


treeSet.add(new Student("zhangsan",98));
treeSet.add(new Student("zhangsan",98));
System.out.println(treeSet.size());
System.out.println(treeSet);

//±¾³ÌÐòÖв¢Ã»ÓÐÖØÐ´equals·½·¨£¬µ«ÊÇtreeSet½«Ê¶±ð³öÁ½¸önew Student("zhangsan",98)ΪÏàͬµÄ£¬ÒòΪÄÚ²¿Êý¾Ý½á¹¹Âð£¿
System.out.println(new Student("zhangsan",98).equals(new Student("zhangsan",98)));

}
}
class Student implements Comparable<Object>
{
public String name;
public double score;
public Student(String name,double score)
{
this.name = name;
this.score = score;
}
public String toString()
{
return name + "\t" + score;
}
@Override
public int compareTo(Object obj)
{
Student cc = (Student)obj;
return (int) (this.score - cc.score);
}
}

³ÌÐò3£º

public class Test_iterator
{
public static void main(String[] args)
{
ArrayList<Integer> arrayList = new ArrayList<Integer>();
arrayList.add(10);
arrayList.add(20);
arrayList.add(30);

Iterator<Integer> iterator = arrayList.iterator();


while (iterator.hasNext())
{
Integer aaInteger = iterator.next();
System.out.println(aaInteger);

}
}
}/**
* 10
20
30
*/
 
   
4681 ´Îä¯ÀÀ       27
Ïà¹ØÎÄÕÂ

Java΢·þÎñÐÂÉú´úÖ®Nacos
ÉîÈëÀí½âJavaÖеÄÈÝÆ÷
JavaÈÝÆ÷Ïê½â
Java´úÂëÖÊÁ¿¼ì²é¹¤¾ß¼°Ê¹Óð¸Àý
Ïà¹ØÎĵµ

JavaÐÔÄÜÓÅ»¯
Spring¿ò¼Ü
SSM¿ò¼Ü¼òµ¥¼òÉÜ
´ÓÁ㿪ʼѧjava±à³Ì¾­µä
Ïà¹Ø¿Î³Ì

¸ßÐÔÄÜJava±à³ÌÓëϵͳÐÔÄÜÓÅ»¯
JavaEE¼Ü¹¹¡¢ Éè¼ÆÄ£Ê½¼°ÐÔÄܵ÷ÓÅ
Java±à³Ì»ù´¡µ½Ó¦Óÿª·¢
JAVAÐéÄâ»úÔ­ÀíÆÊÎö