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

1Ôª 10Ôª 50Ôª





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



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
Java 8 ¿ª·¢¶¥¼¶¼¼ÇÉ
 
×÷ÕߣºÐ¡·å À´Ô´£ºÂëÅ©Íø ·¢²¼ÓÚ 2016-11-22
  1459  次浏览      28
 

ÎÒʹÓÃJava 8±àÂëÒѾ­ÓÐЩÄêÍ·£¬¼ÈÓÃÓÚеÄÓ¦ÓóÌÐò£¬Ò²ÓÃÀ´Ç¨ÒÆÏÖÓеÄÓ¦Ó㬸оõÊÇʱºòдһЩÎÒ·¢Ïֵķdz£ÓÐÓõġ°×î¼Ñʵ¼ù¡±¡£ÎÒ¸öÈ˲¢²»Ï²»¶¡°×î¼Ñʵ¼ù¡±Õâ¸ö˵·¨£¬ÒòΪËüÒâζ×Å¡°Ò»µ¶ÇС±µÄ½â¾ö·½°¸£¬¶ø±àÂë²»¿ÉÄÜÊÇÕâÑùµÄ¹¤×÷·½Ê½¡ª¡ªÎÒÃÇÐèÒªÇ××ÔÈ¥·¢ÏÖʲôÑùµÄ½â¾ö·½°¸²ÅÊÇÓÐЧµÄ¡£µ«ÊÇÎÒ·¢ÏÖÁËһЩJava 8´úÂëÖпÉÒÔ°ïÖúÎÒÃǵÄһЩѡÔñ£¬ÈÃÎÒÃÇÒ»ÆðÀ´¿´¿´°É¡£

1.Optional

OptionalÊÇÒ»¸öÑÏÖØ±»µÍ¹ÀµÄ¹¦ÄÜ£¬²¢ÇÒÓÐDZÁ¦É¾³ýºÜ¶àÀ§ÈÅÎÒÃǵÄNullPointerExceptions¡£ÕâÔÚ´úÂë±ß½çÖУ¨ÒªÃ´ÊÇÕýÔÚʹÓõÄAPI£¬ÒªÃ´ÊÇÕýÔÚ±©Â¶µÄAPI£©ÌرðÓÐÓã¬ÒòΪËüÔÊÐíÄãºÍÄãµÄµ÷ÓôúÂëÀ´ÍÆÀíËùÆÚ´ýµÄ¶«Î÷¡£

È»¶ø£¬²»¼Ó˼¿¼ºÍÉè¼Æ¾ÍÓ¦ÓÃOptional¿ÉÄܻᵼÖÂÓ°Ïì´óÁ¿µÄÀ࣬²¢¿ÉÄܵ¼Ö¿ɶÁÐÔ¸ü²î¡£ÏÂÃæÊÇһЩ¹ØÓÚÈçºÎ¸ßЧʹÓÃOptionalµÄ¼¼ÇÉ¡£

OptionalÓ¦¸ÃÖ»ÓÃÓÚ·µ»ØÀàÐÍ

¡­¡­²»ÊDzÎÊý£¬Ò²²»ÊÇ×ֶΡ£ÐÒÔ˵ÄÊÇ£¬IntelliJ IDEAµÄÈÃÄã´ò¿ª¼ì²éÀ´²é¿´ÊÇÊÇ·ñ×ñÑ­ÕâЩ½¨Òé¡£

OptionalÖµÓ¦ÔÚÓöµ½ËüÃǵĵط½Öд¦Àí¡£IntelliJ IDEAµÄ½¨Òé»á·ÀÖ¹´úÂëOptionalй©£¬ËùÒÔÇë¼ÇµÃÔÚÄã·¢ÏÖOptionalµÄµØ·½´¦ÀíËü£¬Ñ¸ËÙ²ÉÈ¡Ðж¯¡£

²»Ó¦¸Ã¼òµ¥µ÷ÓÃget()

OptionalµÄ¹¦ÄÜÊDZí´ïÕâ¸öÖµ¿ÉÄÜÊǿյ쬲¢ÈÃÄãÓ¦¶ÔÕâÖÖÇé¿ö¡£Òò´Ë£¬ÔÚ¶ÔËü×öÈκÎÊÂÇé֮ǰһ¶¨Òª¼ì²éÊÇ·ñÓÐÒ»¸öÖµ¡£Ö»ÊǼòµ¥µÃµ÷ÓÃget()¶ø²»Ïȼì²éisPresent()ÔÚijЩʱºò¿ÉÄܻᵼÖ¿ÕÖ¸Õë¡£ÐÒÔ˵ÄÊÇ£¬IntelliJ IDEAÒ²Óмì²é¿ÉÒÔÌáÐÑÄãÕâÒ»µã¡£

¿ÉÄÜÓиüÓÅÑŵķ½Ê½

½áºÏÁËget()µÄisPresent()µ±È»»áºÜÔÞ¡­

¡­¡­µ«Ò²ÓиüÓÅÑŵĽâ¾ö·½°¸¡£Äã¿ÉÒÔʹÓÃorElseÔÚÍòÒ»ÊÇ¿ÕÖµµÄÇé¿öϸøÒ»¸öÌæ´ú·½°¸¡£

¡­¡­»òÕßÄã¿ÉÒÔʹÓÃorElseGet˵Ã÷ÔÚֵΪ¿ÕµÄÇé¿öϵ÷ÓÃÄĸö·½·¨¡£ÕâËÆºõÓëÉÏÃæµÄÀý×ÓÏàͬ£¬µ«supplier·½·¨½«Ö»ÔÚÐèÒªµÄʱºòµ÷Óã¬Òò´Ë£¬Èç¹ûÕâÊÇÒ»ÖÖ°º¹óµÄ·½·¨£¬ÄÇôʹÓÃlambda»áÓиü¼ÑÐÔÄÜ¡£

2.ʹÓÃLambda±í´ïʽ

Lambda±í´ïʽÊÇJava 8µÄÖ÷ÒªÌØµãÖ®Ò»¡£¼´Ê¹Ä㻹ûÓÐʹÓÃJava 8£¬ÄãÏÖÔÚ¿ÉÄÜÒѾ­¶ÔËüÃÇÓÐÁË»ù±¾µÄÁ˽⡣ËüÃÇÊÇÓÃJava±à³ÌµÄÒ»ÖÖеķ½Ê½£¬²¢ÇÒʲôÊÇ¡°×î¼Ñʵ¼ù¡±»¹²»Ã÷ÏÔ¡£ÏÂÃæÊÇÎÒϲ»¶×ñÑ­µÄһЩָÒý¡£

±£³Ö¼ò¶Ì

º¯Êýʽ³ÌÐòÔ±Óë½Ï³¤µÄlambda±í´ïʽÏà´¦»á¸üÓä¿ì£¬µ«ÄÇЩÒù½þÓÚJava¶àÄêµÄÈ˻ᷢÏÖ±£³Ölambda±í´ïÊ½ÎªÇøÇø¼¸ÐдúÂë¸üÈÝÒס£ÄãÉõÖÁ¿ÉÄܸüÔ¸Ò⽫ÆäÏÞÖÆµ½Ò»ÐдúÂ룬²¢ÇÒÄã¿ÉÒÔÇáËÉÖØ¹¹½Ï³¤µÄ±í´ïʽΪһ¸ö·½·¨¡£

ÕâЩÉõÖÁ¿ÉÄÜ»á³ÉΪ·½·¨ÒýÓ᣷½·¨ÒýÓÃÒ»¿ªÊ¼»á¾õµÃÓеãİÉú£¬µ«Êµ¼ÊÉϼá³Ö·½·¨ÒýÓÃÊÇÓмÛÖµµÄ£¬ÒòΪËüÃÇÔÚijЩÇé¿öÏÂÓÐÖúÓڿɶÁÐÔ£¬ºóÃæÎÒ»áÌÖÂÛµ½ÕâÒ»µã¡£

Ã÷È·

ÀàÐÍÐÅϢȱÉÙlambda±í´ïʽ£¬ËùÒÔÄã¿ÉÄÜ»á¾õµÃ°üº¬ÀàÐÍÐÅÏ¢ÓÃÓÚ²ÎÊý»áºÜÓÐÓá£

ÕýÈçÄãËù¼û£¬Õâ»Ø±äµÃÏ൱±¿×¾¡£ËùÒÔÎÒ¸üϲ»¶¸ø²ÎÊýȡһ¸öÓÐÓõÄÃû×Ö¡£µ±È»£¬²»¹ÜÄãÓÐûÓÐÕâô×ö£¬IntelliJ IDEA¿ÉÒÔÈÃÄã¿´µ½²ÎÊýµÃÀàÐÍÐÅÏ¢¡£

ÉõÖÁÊÇlambdaËù´ú±íµÄº¯Êýʽ½Ó¿Ú£º

3.Õë¶ÔLambda±í´ïʽÉè¼Æ

ÎÒÈÏΪlambda±í´ïʽÓеãÏñ·ºÐÍ¡ª¡ªºÍ·ºÐÍÒ»Æð£¬ÎÒÃǾ­³£Ê¹ÓÃËüÃÇ£¨ÀýÈ磬Ìí¼ÓÀàÐÍÐÅÏ¢µ½List<>£©£¬µ«×îºÃÎÒÃÇ¿ÉÒÔÉè¼ÆÒ»ÖÖ·½·¨»òÒ»¸ö¾ßÓзºÐÍÀàÐÍ£¨ÀýÈçPerson<T>£©µÄÀࡣͬÑùµÄ£¬µ±Ê¹ÓÃÀàËÆÓÚStreams APIµÄ¶«Î÷ʱ£¬ÎÒÃǻᴫµÝlambda±í´ïʽ£¬µ«¸üºÃµÄÊÇ´´ÔìÒ»¸öÐèÒªlambda²ÎÊýµÄ·½·¨¡£

µ«ÊÇ£¬Èç¹ûÄã·¢ÏÖ×Ô¼º´¦ÓÚÕâÀàÇé¿öÏ£¬ÏÂÃæÓÐһЩ³¬°ôµÄ¼¼ÇÉ¡£

IntelliJ IDEA¿ÉÒÔ°ïÄãÒý½øº¯Êýʽ²ÎÊý

ÕâÈÃÄã¿ÉÒÔÔÚÓÐÈ˽«´«µÝÒ»¸ölambda¶ø·ÇObjectµÄµØ·½´´½¨Ò»¸ö²ÎÊý¡£´Ë¹¦Äܵĺô¦ÊÇ£¬Ëü±íÃ÷£¬ÏÖÓк¯Êýʽ½Ó¿ÚÆ¥Å乿¸ñ˵Ã÷¡£

Õâ»áµ¼Ö¡­

ʹÓÃÏÖÓеĺ¯Êýʽ½Ó¿Ú

Ëæ×Å¿ª·¢ÈËÔ±Ô½À´Ô½ÊìϤJava 8´úÂ룬ÎÒÃǾÍÄÜÖªµÀµ±Ê¹ÓÃÈçSupplierºÍ ConsumerµÄ½Ó¿Úʱ£¬»á·¢Éúʲô£¬ÒÔ¼°´´½¨Ò»¸ö±¾µØµÄErrorMessageCreator£¨¾Ù¸öÀý×Ó£©¿ÉÄÜ»áÔì³É»ìÂÒ£¬¶øÇÒÀË·Ñ¡£¿´¿´Õâ¸öº¯Êý°üÁ˽âÒ»ÏÂÄÄЩÒѾ­ÊÇ¿ÉÓõġ£

Ìí¼Ó@FunctionalInterfaceµ½º¯Êýʽ½Ó¿Ú

Èç¹ûÄãȷʵÐèÒª´´½¨×Ô¼ºµÄº¯Êýʽ½Ó¿Ú£¬ÄÇô¾ÍÕâÑùÓôË×¢Êͱê¼Ç¡£ÕâËÆºõûÓÐÌ«´óµÄ×÷Ó㬵«IntelliJ IDEA»á¸æËßÄ㣬ÔÚÄãµÄ½Ó¿Ú²»ÄÜÆ¥ÅäÓÃÓÚº¯Êýʽ½Ó¿ÚµÄÒì³£µÄʱºò¡£µ±ÄãûÓÐÖ¸¶¨Òª¸²¸ÇµÄ·½·¨Ê±£¬Ëü»á±êÖ¾£º

µ±ÄãÖ¸¶¨ÁËÌ«¶à·½·¨µÄʱºò£¬Ëü»á±êÖ¾£º

²¢ÇÒÈç¹ûÄãÓ¦ÓÃËüµ½Ò»¸öÀà¶ø²»ÊǽӿÚʱ£¬Ëü»á¾¯¸æÄ㣺

lambda±í´ïʽ¿ÉÓÃÓÚ´øÓÐÒ»¸öµ¥Ò»³éÏó·½·¨µÄÈκνӿڣ¬µ«ËüÃDz»ÄÜÓÃÓÚ·ûºÏÏàͬ±ê×¼µÄ³éÏóÀà¡£ËÆºõ²»ºÏÂß¼­£¬µ«¾ÍÊÇÕâÑù¡£

4.Stream

Stream APIÊÇJava 8ÁíÒ»¸ö´óÌØµã£¬²¢ÇÒÎÒÈÏΪÎÒÃÇ»¹ÕæµÄ²»ÖªµÀÕâ¶ÔÎÒÃǵıàÂ뷽ʽ»á²úÉú¶à´óµÄ¸Ä±ä¡£ÏÂÃæÊÇÎÒ·¢ÏÖµÄһЩÓÐÓõĶ«Î÷¡£

ÅŶӵã²Ù×÷·û

ÎÒ¸öÈ˸üϲ»¶ÅŶÓÎÒµÄÁ÷²Ù×÷¡£µ±È»£¬ÄãûÓбØÒªÕâÑù£¬µ±ÎÒ·¢ÏÖÕâÑù×ö¶ÔÎÒÓаïÖú£º

һĿÁËÈ»µØ¿´µ½ÎÒÓÐÄÄЩ²Ù×÷

µ÷ÊÔ¸üÈÝÒ×£¨ËäÈ»IntelliJ IDEAȷʵÌṩÁ˶ÔÒ»ÐÐÖеÄÈÎÒâ¶à¸ölambda±í´ïʽÉèÖöϵãµÄÄÜÁ¦£¬µ«ÊDzð·Öµ½²»Í¬µÄÐлá±äµÃ¸ü¼òµ¥£©

µ±ÎÒ²âÊÔ¶«Î÷µÄʱºò×¢ÊͲÙ×÷

ÇáËɲåÈëpeek()ÓÃÓÚµ÷ÊÔ»ò²âÊÔ

´ËÍ⣬ÔÚÎÒ¿´À´£¬Ëü¸üÕû½à¡£Èç¹ûÎÒÃǰ´ÕÕÕâ¸öģʽ£¬ÔÚ¼õÉÙ´úÂëÐÐÊý·½ÃæÎÒÃDz¢Ã»ÓÐÔö¼ÓºÜ¶à¡£

Äã¿ÉÄÜÐèÒªµ÷Õû¸ñʽÉèÖÃÒÔÅÅÁеã²Ù×÷·û¡£

ʹÓ÷½·¨ÒýÓÃ

Êǵģ¬È·ÊµÐèÒªÒ»¶Îʱ¼äÀ´ÊÊÓ¦Õâ¸öÆæ¹ÖµÄÓï·¨¡£µ«ÊÇ£¬Èç¹ûʹÓõõ±£¬Ëüȷʵ¿ÉÒÔÔö¼Ó¿É¶ÁÐÔ¡£Çë¿´£º

Ó루Ïà¶Ô£©ÐµÄObjectsÀàÉϵĸ¨Öú·½·¨Ïà±È½Ï£º

ºóÕߵĴúÂë¶ÔÓÚÄÄЩֵÊÇÒª±£´æµÄ¸ü¼ÓÃ÷È·¡£µ±lambda¿ÉÒÔ±»ÕÛµþµ½·½·¨²Î¿¼µÄʱºò£¬IntelliJ IDEAͨ³£»áÈÃÄãÖªµÀ¡£

µ±±éÀúÒ»¸ö¼¯ºÏʱ£¬ÔÚ¿ÉÐеÄÇé¿öÏÂʹÓÃStreams API

¡­»òÕßÐµļ¯ºÏ·½·¨£¬ÈçforEach¡£IntelliJ IDEA¸øÄ㽨ÒéÊÇ£º

Ò»°ãʹÓÃStreams API±ÈÑ­»·ºÍifÓï¾äµÄ×éºÏ¸ü¼ÓÃ÷È·¡£ÀýÈ磺

IntelliJ IDEA½¨ÒéÕâ¿ÉÖØ¹¹Îª£º

ÎÒËù×öµÄÐÔÄܲâÊÔ±íÃ÷ÕâÖÖÖØ¹¹ÁîÈ˾ªÑÈ¡ª¡ª²¢²»×ÜÊÇ¿ÉÔ¤²âÐÔÄÜÊDZ£³Ö²»±ä£¬¸ÄÉÆ»¹ÊDZäµÃ¸üÔã¡£ÓëÍù³£Ò»Ñù£¬Èç¹ûÐÔÄÜÔÚÓ¦ÓóÌÐòÖÐÊǹؼü£¬ÄÇôÔÚ½»¸¶Ò»ÖÖ·ç¸ñµ½ÁíÒ»ÖÖ֮ǰºâÁ¿Ëü¡£

±éÀúÊý×éʱʹÓÃÑ­»·

µ«ÊÇ£¬Ê¹ÓÃJava 8²¢²»Ò»¶¨Òâζ×ÅÄã±ØÐëµ½´¦Ê¹ÓÃÁ÷ºÍÐµļ¯ºÏ·½·¨¡£IntelliJ IDEA»á½¨Òéת»»³ÉÁ÷£¬µ«ÊÇ£¬Õâ²¢²»Òâζ×ÅÄã±ØÐë»Ø´ð¡°yes¡±£¨¼ÇµÃ¼ì²éÊÇ¿ÉÒÔÒÖÖÆ»ò¹Ø±ÕµÄ£©¡£

ÌØ±ðÊÇ£¬±éÀúԭʼÀàÐ͵ÄСÐÍÊý×鼸ºõ¿Ï¶¨»áÓã¬ÒÔ»ñµÃ¸üºÃµÄÐÔÄÜÑ­»·£¬ºÜ¿ÉÄÜ£¨ÖÁÉÙ¶ÔÓÚJava¿ª·¢ÈËÔ±ÊÇеÄÁ÷£©¸ü¾ß¿É¶ÁÐÔ¡£

ÓëÈκμ¼ÇÉÒ»Ñù£¬¹æÔò²¢²»ÊÇÒ»³É²»±äµÄ£¬µ«ÄãÓ¦¸Ã¾ö¶¨ÊǾ¡¿ÉÄܵØÊ¹ÓÃStreams API£¬»¹ÊÇÒÀÈ»¶ÔһЩ²Ù×÷ʹÓÃÑ­»·¡£×ÜÖ®£¬ÒªÒ»Ö¡£

×îºó

ÿÌì¶¼ÔÚ·¢ÏÖÐµĶ«Î÷£¬²¢ÇÒÓÐʱºòÎ񵀮«ºÃ»á·¢Éú±ä»¯¡ª¡ªÀýÈ磬·½·¨ÒýÓã¬ÎÒÔø¾­Éî¶ñÍ´¾ø²¢ÇÒ±ÜÃâÔÚÎҵĴúÂëÖÐʹÓá£ÏÖÔÚÎÒºÜÏëÌýÌýÄãµÄÃØ¾÷£¡

   
1459 ´Îä¯ÀÀ       28
Ïà¹ØÎÄÕÂ

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

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

¸ßÐÔÄÜJava±à³ÌÓëϵͳÐÔÄÜÓÅ»¯
JavaEE¼Ü¹¹¡¢ Éè¼ÆÄ£Ê½¼°ÐÔÄܵ÷ÓÅ
Java±à³Ì»ù´¡µ½Ó¦Óÿª·¢
JAVAÐéÄâ»úÔ­ÀíÆÊÎö
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

Java ÖеÄÖÐÎıàÂëÎÊÌâ
Java»ù´¡ÖªÊ¶µÄÈýÊ®¸ö¾­µäÎÊ´ð
Íæ×ª Java Web Ó¦Óÿª·¢
ʹÓÃSpring¸üºÃµØ´¦ÀíStruts
ÓÃEclipse¿ª·¢iPhone WebÓ¦ÓÃ
²å¼þϵͳ¿ò¼Ü·ÖÎö

Struts+Spring+Hibernate
»ùÓÚJ2EEµÄWeb 2.0Ó¦Óÿª·¢
J2EEÉè¼ÆÄ£Ê½ºÍÐÔÄܵ÷ÓÅ
Java EE 5ÆóÒµ¼¶¼Ü¹¹Éè¼Æ
Javaµ¥Ôª²âÊÔ·½·¨Óë¼¼Êõ
Java±à³Ì·½·¨Óë¼¼Êõ

Struts+Spring+Hibernate/EJB+ÐÔÄÜÓÅ»¯
»ªÏÄ»ù½ð ActiveMQ Ô­ÀíÓë¹ÜÀí
ijÃñº½¹«Ë¾ Java»ù´¡±à³Ìµ½Ó¦Óÿª·¢
ij·çµç¹«Ë¾ Java Ó¦Óÿª·¢Æ½Ì¨ÓëÇ¨ÒÆ
ÈÕÕÕ¸Û J2EEÓ¦Óÿª·¢¼¼Êõ¿ò¼ÜÓëʵ¼ù
ij¿ç¹ú¹«Ë¾ ¹¤×÷Á÷¹ÜÀíJBPM
¶«·½º½¿Õ¹«Ë¾ ¸ß¼¶J2EE¼°ÆäÇ°ÑØ¼¼Êõ