package Ġorg . kotlin . action Ċ Ċ import Ġjava . awt . event . Mouse Adapter Ċ import Ġjava . awt . event . MouseEvent Ċ import Ġjava . io . File Ċ import Ġjava . io . Serializable Ċ Ċ /** Ċ Ġ* Ġobject Ġ åħ³éĶ®åŃĹ Ċ Ġ*/ Ċ // Ġ çĽ´æİ¥ åĪĽå»º Ċ object ĠCase Ins ensitive File Comparator : ĠComparator < File > Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġcompare ( o 1 : ĠFile , Ġo 2 : ĠFile ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġo 1 . path . compareTo ( o 2 . path , Ġtrue ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ // Ġ åµ Į å¥Ĺ ç±» åĪĽå»º Ċ data Ġclass ĠMy Person ( val Ġname : ĠString ) Ġ{ ĊĠĠĠ Ġobject ĠName Comparator : ĠComparator < My Person > Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcompare ( o 1 : ĠMy Person , Ġo 2 : ĠMy Person ): ĠInt Ġ= Ġo 1 . name . compareTo ( o 2 . name ) ĊĊĠĠĠ Ġ} Ċ } Ċ Ċ // Ġ ä¼ ´ çĶŁ å¯¹è±¡ - åı¯ åĪĽå»º å·¥ åİĤ æĸ¹æ³ķ åĴĮ éĿĻæĢģ æĪĲåĳĺ Ċ class ĠUser Ġprivate Ġconstructor ( val Ġnickname Ġ: ĠString ) Ġ{ ĊĠĠĠ Ġ// Ġ å£°æĺİ ä¼ ´ çĶŁ å¯¹è±¡ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġnew Sub scri bing User ( email : ĠString ): ĠUser Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠUser ( email . substring Before Last ('@ ')) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfun Ġnew Facebook User ( accountId : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// User ( get Facebook Name ( accountId )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ // Ġå¯¹è±¡ è¡¨è¾¾å¼ı Ċ val Ġlistener Ġ= Ġobject Ġ: ĠMouse Adapter () Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġmouse Clicked ( e : ĠMouseEvent ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . mouse Clicked ( e ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġmouse Entered ( e : ĠMouseEvent ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . mouse Entered ( e ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġmain ( args : ĠArray < String >) Ġ{ ĊĠĠĠ Ġ// Ġ çĽ´æİ¥ è°ĥçĶ¨ å¯¹è±¡ compare æĸ¹æ³ķ ĊĠĠĠ Ġprintln ( Case Ins ensitive File Comparator . compare ( File ("/ User "), ĠFile ("/ user "))) ĊĠĠĠ Ġ// Ġ åĪ©çĶ¨ sorted With è¿ĶåĽŀ çī¹å®ļ æ¯Ķè¾ĥ åĻ¨ æİĴåºı è¿ĩ çļĦ åĪĹè¡¨ ĊĠĠĠ Ġval Ġfiles Ġ= ĠlistOf ( File ("/ Z "), ĠFile ("/ a ")) ĊĠĠĠ Ġprintln ( files . sorted With ( Case Ins ensitive File Comparator )) ĊĠĠĠ Ġ// Ġ ä¼ ´ çĶŁ å¯¹è±¡ è°ĥçĶ¨ ĊĠĠĠ Ġval Ġuser 1 Ġ= ĠUser . new Sub scri bing User (" bob @ gmail . com ") ĊĠĠĠ Ġprintln ( user 1 . nickname ) Ċ }