日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > 收集的java問題和技巧

收集的java問題和技巧

來源:程序員人生   發布時間:2016-11-17 09:42:11 閱讀次數:2457次

下面的java編程的問題和技能,部份是自己遇到的問題和總結,部份是自己在網上看到的成心思的問題。本篇文章內容

將會不斷的對自己搜集的問題和技能進行更新。


1).List遍歷進程中刪除元素推薦做法


使用Iterator遍歷,但是不用list來remove。代碼以下:

List<Integer> list = new ArrayList<Integer>(); list.add(1); list.add(2); list.add(2); list.add(3); list.add(4); System.out.println("----------list大小1:--"+list.size()); Iterator<Integer> it = list.iterator(); while(it.hasNext()){ Integer item = it.next(); if (2 == item) { it.remove(); } System.out.println(item); } System.out.println("最后輸出=" + list.toString());

運行結果:

----------list大小1:-⑸ 1 2 2 3 4 最后輸出=[1, 3, 4]


2.Java是“援用傳遞”還是“值傳遞”?


很多人認為Java是援用傳遞;其實Java1直是值傳遞。很多人把指針叫做援用,這些援用也是通過值傳遞的。


3.遍歷HashMap中元素的最好方法是甚么?


我知道的遍歷方式有下面兩種:


方式1:


Iterator it = mp.entrySet().iterator(); while (it.hasNext()) { Map.Entry entity = (Map.Entry)it.next(); System.out.println(entity.getKey() + " = " + entity.getValue()); it.remove(); // 避免 ConcurrentModificationException } }


方式2:


for (String key : mp.keySet()) { System.out.println(mp.get(key)); }


經過測試第1種方式比第2種方式效力高


4.1個關于Java += 操作符的問題

i += j;很多人以為i = i + j是它的簡寫,但事實不是。以下例子:


public class Test1 { public static void main(String[] args) { int i = 1; long j = 10; i+=j; i=i+j; } }


i=i+j這1行會提示Type mismatch: cannot convert from long to int(以下圖)說明 i+=j不是i=i+j的簡寫。


其實像E1 op= E2 型的復合賦值表達式等價于 E1 = (T)((E1) op (E2)),這里 T 是 E1 的類型,不同的是 E1 只計算1次,op是操作,

所以i+=j可以翻譯成i=(int) (i+j)。


 5.null屬于哪一種數據類型

在Java中,null本身不是對象,也不是Objcet的實例。那末他屬于哪一種數據類型呢?其實java有3種類型:基本類型、援用類和null類型。

null本身雖然能代表1個不肯定的對象。但就null本身來講,它不是對象,也不是java.lang.Object的實例。null是1種特殊的type,但是你不能聲

明1個變量為null類型,null type的唯1取值就是null。null只能賦給援用類型變量。


6.string不可以將null賦給基本類型變量


1).字符串池是方法區中的1部份特殊存儲。當1個字符串被被創建的時候,首先會去這個字符串池中查找,如果找到,直接返回對該字符

串的援用。如果字符串可變的話, 當兩個援用指向指向同1個字符串時,對其中1個做修改就會影響另外1個。


2).緩存Hashcode


java中常常會用到字符串的哈希碼(hashcode)。例如,在HashMap中,字符串的不可變能保證其hashcode永久保持1致,這樣就能夠避

免1些沒必要要的麻煩。這也就意味著每次在使用1個字符串的hashcode的時候不用重新計算1次,這樣更加高效。


3).使其他類的使用更加便利:如果字符串可以被改變,那末將有可能違背Set的設計原則,由于有些場景如Set要求其中的元素不可以重復的;


4).安全性:String被廣泛的使用在其他Java類中充當參數。比如網絡連接、打開文件等操作。如果字符串可變,那末類似操作可能致使安全問題;


5).不可變對象天生就是線程安全的:由于不可變對象不能被改變,所以他們可以自由地在多個線程之間同享。不需要任何同步處理。


String 被設計成不可變的主要目的是為了安全和高效。所以,使 String 是1個不可變類是1個很好的設計。



注:部份內容參考于網上資料,更多內容等待更新中.....

---------------------------------------------------------------------------版權聲明-----------------------------------------------------------------------------------------------


博客地址:http://blog.csdn.net/mr_smile2014



??

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产精品一区二区三区不卡 | 91 久久 | 精品国产乱码久久久久 | 不卡一区二区三区四区 | 国产精品视频观看 | 日韩国产成人 | 欧美另类视频在线 | www久久久久 | 日日干夜夜操 | 中文字幕国产亚洲 | 黄网入口 | 日韩视频在线播放 | 欧美精品黑人猛交高潮 | 亚洲久久久 | 少妇精品亚洲一区二区成人 | 色综合久久久 | 久久久久成人精品 | 国产成人精品免费视频大全 | 久久精品小视频 | 成人污视频在线观看 | 久久偷窥视频 | 国产伦理一区 | 成人激情在线 | 成人久久精品 | 国产成人久久 | 国产激情| 国产高清精品一区 | 麻豆成人久久精品二区三区小说 | 福利片在线 | 精品视频免费在线播放 | 亚洲黄色片| 久久久久久久久综合 | 亚洲国产视频一区 | 疯狂做受xxxx国产 | 欧美日韩激情在线 | 亚洲精品大片www | 免费观看高清韩国日本大全 | 成人永久免费视频 | 九色91在线 | 国产精品高清在线观看 | 久久精品国产一区二区 |