您好,登錄后才能下訂單哦!
小編給大家分享一下Java快速失敗機(jī)制指的是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
Java的基本數(shù)據(jù)類(lèi)型分為:1、整數(shù)類(lèi)型,用來(lái)表示整數(shù)的數(shù)據(jù)類(lèi)型。2、浮點(diǎn)類(lèi)型,用來(lái)表示小數(shù)的數(shù)據(jù)類(lèi)型。3、字符類(lèi)型,字符類(lèi)型的關(guān)鍵字是“char”。4、布爾類(lèi)型,是表示邏輯值的基本數(shù)據(jù)類(lèi)型。
1、說(shuō)明
快速失敗是Java集合的錯(cuò)誤檢測(cè)機(jī)制,在多個(gè)線(xiàn)程改變集合結(jié)構(gòu)的操作時(shí),可能會(huì)產(chǎn)生fail-fast。
多個(gè)線(xiàn)程操作相同集合的內(nèi)容時(shí),可能會(huì)發(fā)生fail-fast事件。
要了解fail-fast機(jī)制,首先要了解ConcurentModificationException的異常。方法檢測(cè)到對(duì)象并發(fā)修正時(shí),不允許這種修正時(shí)出現(xiàn)異常。同時(shí)需要注意的是,這種異常不會(huì)總是指出對(duì)方已經(jīng)通過(guò)不同的行程并發(fā)修改,如果單行程違反規(guī)則,也有可能出現(xiàn)這種異常。
2、實(shí)例
import java.util.ArrayList; import java.util.Iterator; import java.util.List; /** * 1.創(chuàng)建一個(gè)ArrayList集合 * 2.在集合中添加10個(gè)數(shù)字 * 3.用迭代器遍歷該集合 * 4.在遍歷的同時(shí)加入條件進(jìn)行remove移除元素 * 5.在當(dāng)條件滿(mǎn)足時(shí),會(huì)產(chǎn)出異常:java.util.ConcurrentModificationException */ public class TestFailSafe1 { public static void main(String[] args) { List<String> list = new ArrayList<>(); for (int i = 0; i < 10; i++) { list.add(i + ""); } Iterator<String> iterator = list.iterator(); int count = 0; while (iterator.hasNext()) { if (count == 5) { list.remove(5); } System.out.println(iterator.next()); count++; } } }
以上是“Java快速失敗機(jī)制指的是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。