JavaÖÐSetµÄÉîÈëÑо¿
SetºÍÊýѧÖеļ¯ºÏÊÇͬһ¸ö¸ÅÄ¾ÍÊÇûÓÐÖØ¸´ÔªËصļ¯ºÏ¡£
ÕâÆªÎÄÕÂÖ÷ÒªÂÛÊöÁËSetÊÇÈçºÎʵÏÖ"ûÓÐÖØ¸´ÔªËØ"£¨no duplicate elements£©µÄ£¬ÒÔ¼°²ûÊöÁËʲôÊÇ“ÖØ¸´”£¨duplicate£©£¬ÊÇÏàͬµÄµØÖ·¿Õ¼ä£¿ÊÇequalsµÄ·µ»ØÖµÎªtrue£¿ÊÇcompareToµÄ·µ»ØÖµÎª0 £¿»¹ÊÇÓÐÏàͬµÄhashCode£¿±¾ÎÄ»¹¸ø³öÁËÔÚʲôÇé¿öÏÂʹÓÃʲôÑùµÄSetµÄ½¨Òé¡£
×¢£º±¾ÎIJ»Éæ¼°·¶ÐÍ¡£
1¡¢Ê÷Ðνṹ£º
public interface Set extends Collection{}
public abstract class AbstractSet extends AbstractCollection implements Set{}
public class CopyOnWriteArraySetextends AbstractSetimplements Serializable{}
public abstract class EnumSet>extends AbstractSetimplements Cloneable, Serializable{}
public class HashSetextends AbstractSetimplements Set, Cloneable, Serializable{}
public final class JobStateReasonsextends HashSetimplements PrintJobAttribute{}
public class LinkedHashSetextends HashSetimplements Set, Cloneable, Serializable{}
public class TreeSetextends AbstractSetimplements SortedSet, Cloneable, Serializable{}
¿ÉÒÔ¿´³ö£¬¿ÉÒÔʵÀý»¯µÄÀàΪ£ºCopyOnWriteArraySet£¬HashSet£¬LinkedHashSet£¬TreeSet¡£
2¡¢SetÊÇÈçºÎʵÏÖÔªËØÎ¨Ò»ÐÔµÄ
javadocÖжÔSetµÄÃèÊöµÚÒ»¶ÎÈçÏ£º“A collection that contains no duplicate elements. More formally, sets contain no pair of elements e1
and e2 such that e1.equals(e2), and at most one null element. As implied by its name, this interface models the mathematical set abstraction.”
Õâ¶Î»°ÊǶÔÊÇ´í£¬Çë¿´ÏÂÃæ·ÖÎö¡£
Òª½øÐÐÏÂÃæµÄÂÛÊö£¬ÎÒÃÇÏÈÁ˽âÒ»ÏÂMap¡£MapÖеÄÔªËØÊÇ“¼ü£Öµ”¶Ô£¬ÆäÖГ¼ü”±ØÐëÊÇΨһµÄ¡£TreeSetºÍHashSet¾ÍÊÇÀûÓÃÕâ¸öÌØÐÔʵÏÖ“no duplicate elements”¡£Ëü°ÑsetÖеÄÔªËØ×÷ΪMapÖеē¼ü”£¬´Ó¶ø±£³ÖÔªËØµÄΨһÐÔ¡£ÕâЩ¼üÔÚMapÖÐÓÖÊÇÈçºÎÇø·ÖµÄÄØ£¿²»Í¬µÄMapÓв»Í¬µÄ×ö·¨£¬¶øÇÒÇø±ðºÜ´ó¡£
ÏÂÃæÎÒÃÇ·Ö±ð¾ÍTreeSet¡¢HashSetºÍCopyOnWriteArraySet½øÐÐÂÛÊö£º
2.1¡¢TreeSet²¿·Ö£º
ÒÔÏÂÒÔTreeSetΪÀý½øÐзÖÎö¡£
Çë¿´TreeSetµÄ²¿·ÖʵÌ壺
public class TreeSet extends AbstractSet
implements SortedSet, Cloneable, java.io.Ser
Ïà¹ØÎĵµ£º
Producer-Consumer PatternµÄ²ÎÓëÕߣº
1. Data²ÎÓëÕß
±»Producer²ÎÓëÕßËù´´½¨£¬²¢ÓÉConsumer²ÎÓëÕßËùʹÓá£
2. Producer£¨Éú²úÕߣ©²ÎÓëÕß
´´½¨Data²ÎÓëÕߣ¬²¢½«Æä´«µÝ¸øChannel²ÎÓëÕß¡£
3. Consumer£¨Ïû·ÑÕߣ©²ÎÓëÕß
´ÓChannel²ÎÓëÕß»ñÈ¡Data²ÎÓëÕß¡ ......
µ±Ò»¸ö·½·¨ºóÃæÉùÃ÷¿ÉÄÜ»áÅ׳öInterruptedException Ò쳣ʱ£¬ËµÃ÷¸Ã·½·¨ÊÇ¿ÉÄܻỨһµãʱ¼ä£¬µ«ÊÇ¿ÉÒÔÈ¡ÏûµÄ·½·¨¡£
Å×InterruptedExceptionµÄ´ú±í·½·¨ÓУº
1. java.lang.Object ÀàµÄ wait ·½·¨
2. java.lang.Thread ÀàµÄ sleep ·½·¨
3. java.lang.Thread ÀàµÄ join ·½·¨
-- ÐèÒª»¨µãʱ¼äµÄ·½·¨
Ö´ÐÐwait·½·¨µÄÏ ......
1¡¢¼¯ºÏÆäʵ¿ÉÒÔ¿´³ÉΪÊý×éµÄÀ©Õ¹£¬ËüÓëÊý×éµÄ²»Í¬Ö®´¦ÔÚÓÚ:
¡¶1¡· Ò»¸öÊý×éÖ»ÔÊÐí´æ´¢Ò»ÖÖÀàÐ͵ÄÊý¾Ý£¬¶øÒ»¸ö¼¯ºÏ¿ÉÒÔ´æ´¢ÈÎÒ»ÖÖ¶ÔÏóÀàÐÍÊý¾Ý£»
¼òµ¥µÄ˵һ¸ö¼¯ºÏÀàËÆÒ»¸ö O ......
1¡¢ ´®²Ù×÷£ºÊ¹ÓÃ×Ö·û´®´æÖüÒ»¸öÓ¢Îľä×Ó“Java is an object oriented programming
language”¡£ÏÔʾ¸Ã¾ä×Ó£¬²¢Ëã³öÿ¸öµ¥´ÊµÄ×ÖĸÊýºÍƽ¾ù×ÖĸÊý£¬²¢°´µ¥´ÊÉýÐòÅÅÁÐÊä³ö£¨²»ÓÃÊý×飬ֻÓô®²Ù×÷£©
public class homework21 {
public static void main(String[] args) {
&nb ......
Ò»°ãµÄÊÊÓÃÓÚS40µÄJAVAÈí¼þ¶¼¿ÉÒÔ×°ÔÚŵ»ùÑÇ3110cÉÏ,°üÀ¨ÓÎÏ·,µç×ÓÊé,Ó¦ÓÃÈí¼þ ʲôÊÇJAVAÈí¼þÄØ£¿
JavaÊÇÓÉSun΢ϵͳ¹«Ë¾Ëù·¢Õ¹³öÀ´µÄ³ÌÐòÓïÑÔ£¬Ëü±¾ÉíÊÇÒ»ÖÖ¶ÔÏóµ¼Ïò£¨Object-Oriented£©µÄ³ÌÐòÓïÑÔ¡£JAVAĿǰÔÚÊÖ»úÉÏÓ¦ÓÃ×î¶àµÄ¾ÍÊÇJAVAÓÎÏ·¡£
JavaÒ²ºÅ³ÆÊÇÄÜ¿çÆ½Ì¨Ê¹ÓõÄÓïÑÔ£¬ÕâÖ÷ÒªÊÇÒòΪJava±¾Éí±»±àÒëÖ®ºó£¬²¢² ......