java中集合选取怎么选_集合中的可选
java中集合選取怎么選
有時有人認為Optional類型值得在集合中使用。 據稱,它解決了以下問題: HashMap在沒有鍵映射以及值null映射到鍵的情況下返回null 。 如果使用Map<Optional<Something>>則可以清楚地區分缺少的映射和缺少的值。 這樣一來,您在兔子洞中的位置會更深一層。
首先:
您可以
告訴一個鍵是否映射為null或不使用Optional不映射。 有方法containsKey() 。 這是又一個方法調用,用于將非映射鍵與映射的null值分開。 但是,調用Optional的方法也是。 那有什么意義呢? 另一方面
你不需要
判斷鍵是否已映射為null或缺少映射。 如果兩種情況下您的程序代碼不同,則您以錯誤的方式創建了用于企業登錄的代碼。 這肯定是代碼的味道。 將null視為“什么都沒有”,而不是“將null分配給鍵'aaaaaarrghhh'”,而是大聲說:什么都沒有分配給鍵'aaaaaarrghhh'。 你看? 除了所有人現在都在辦公室里看著您之外,沒有任何區別。
并在Map使用optional作為值
你會
過一會兒,在兔子洞中將其深一層。 代碼過著獨立的生活。 開發它的不僅是您自己。 在大型組織中,有一些開發人員肯定在代碼編寫時就醉了。 (這是某些代碼的唯一合理解釋。)它們很快就會用以下命令填充您的Map<Optional<Something>>
- null值,
- 缺少Optional值
- 甚至帶有包裝其他內容但不包含“ Something ”的Optional對象。
有時,如果幸運的話,您甚至可能會發現一些非null ,不存在的Optional<Something>值。
翻譯自: https://www.javacodegeeks.com/2015/08/optional-in-collections.html
java中集合選取怎么選
總結
以上是生活随笔為你收集整理的java中集合选取怎么选_集合中的可选的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 陕西八大怪是哪八大怪(陕西八大怪是哪八大
- 下一篇: 女人桃花命是什么意思