生活随笔
收集整理的這篇文章主要介紹了
培训总结2
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
???? 今天,我學習了工具類java.util.包中的幾個平時經常用到的幾個類,例如ArrayList、HashMap、Hashtable等幾個類,在這我總結一下ArrayList的用法。
?????? 特征:允許null在內的所有元素,大致上等同于Vector類,但是他是不同步的。
????? ArrayList實現的對象非常方便的進行存儲,下面的代碼是能夠非常明顯的顯示出這個類的方便之處。
?????? ?import?java.io.ByteArrayInputStream;??? ?import?java.io.ByteArrayOutputStream;??? ?import?java.io.IOException;??? ?import?java.io.ObjectInputStream;??? ?import?java.io.ObjectOutputStream;??? ?import?java.util.ArrayList;??? ?import?java.util.List;????? ?public?class?TestMain?{???????? ?????/**???????*?@param?args???????*/?? ????? ????public?static?void?main(String[]?args)?{????????? ??????//?TODO?Auto-generated?method?stub?????????? ??????List?src?=?new?ArrayList(4);?????????? ??????Userinfo?ui1?=?new?Userinfo();????????? ??????ui1.setId(1);??????????? ??????ui1.setName("aaa");??????????? ??????src.add(ui1);??? ?????? ??????Userinfo?ui2?=?new?Userinfo();?????????? ??????ui2.setId(2);??????????? ??????ui2.setName("bbb");??????????? ??????src.add(ui2);???? ??????System.out.println(src.size()); ?????? ????? ?????? ??????List?dest?=?new?ArrayList(2);?? ?????? ??????TestMain?test?=?new?TestMain();?????????????????? ??????try?{?????????????? ??????????dest?=?test.deepCopy(src);?????//深拷貝?????? ??????????}? ??????catch?(IOException?e)?{???? ??????????????//?TODO?Auto-generated?catch?block?????????????? ??????????????e.printStackTrace();?????????? ??????????????}?? ??????catch?(ClassNotFoundException?e)?{????? ??????????????????//?TODO?Auto-generated?catch?block?????????????? ??????????????????e.printStackTrace();?????????? ??????????????????}????????????????? ??????????????System.out.println(src==dest);????????? ??????????????Userinfo?u1?=?(Userinfo)src.get(0); ??????????????Userinfo?u2?=?(Userinfo)src.get(1);????????? ??????????????System.out.println(u1.getName());? ??????????????System.out.println(u2.getName()); ??????????????Userinfo?uu?=?(Userinfo)dest.get(0);????????? ??????????????//uu.setName("dkkdkddk");?????????? ??????????????System.out.println(u1.getName());? ??????????????System.out.println(u2.getName()); ??????????????System.out.println(uu.getName());????????????? ?????????????????????? ??????} ?????? ?? ????????public?List?deepCopy(List?src)?throws?IOException,?ClassNotFoundException{???//將list復制并且翻轉? ??????????????ByteArrayOutputStream?byteOut?=?new?ByteArrayOutputStream();?????????? ???????????????ObjectOutputStream?out?=?new?ObjectOutputStream(byteOut);?????????? ???????????????out.writeObject(src);???????????????? ???????????????ByteArrayInputStream?byteIn?=?new?ByteArrayInputStream(byteOut.toByteArray());??????? ???????????????ObjectInputStream?in?=new?ObjectInputStream(byteIn);????????? ???????????????List?dest?=?(List)in.readObject();?????????? ???????????????return?dest;??? ?????????????????} ?} ?? 這個測試類,實現的內容是把兩個UserInfor對象存儲進去,然后方法deepCopy是把列表反轉復制。
如果想了解反轉的話,可以看一下API中對ObjectOutputStream的介紹。
轉載于:https://blog.51cto.com/3504199/655243
總結
以上是生活随笔為你收集整理的培训总结2的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。