vb使用字符串分隔字符串_为什么要使用字符串
vb使用字符串分隔字符串
最近,我在一次培訓課程中輔導初中生。 任務之一是編寫一個類,該類可以根據某些字符串鍵使映射變形。 創建的初級用戶之一的結果包含以下方法:
該代碼通常還可以。 使用散列表中分配給它的實際鍵來對單個可變形條目進行變形的方法,并且該變形鍵被分解為單獨的方法。 非常簡單,我不在這里列出。 只要您知道實際上是什么矮人,變量名也就有意義。 該方法簡短易懂,但是參數列表需要一個HashMap而不是Map 。 為什么我們要限制調用方使用HashMap ? 如果調用者具有TreeMap并且有充分的理由,該怎么辦。 我們是否想要一種可以使TreeMap相形見separate的單獨方法? 當然不是。
期望接口,通過實現。
大三學生將代碼替換為HashMap改為Map,但是大約五分鐘后,這位聰明的女士舉起了手,并提出了以下問題:
“如果我們將HashMap更改為Map,為什么不將String更改為CharSequence?”
當問題突然出現時,要回答這樣的問題并非易事。 我想到的第一件事是原因是我們通常以這種方式這樣做,這就是原因。 但這不是一個真正的論點,至少我不會接受那樣的事情,除了學生我也不接受這樣的回答。 無論如何,這將是非常獨裁的風格。
真正的答案是,該參數在映射中用作鍵,并且映射的鍵應該是不可變的(至少突變應具有對等值和哈希碼計算的彈性)。 CharSequence是一個接口,而Java中的接口(很遺憾)不能保證不變性。 只有實現可以。 String是此接口的一個良好的,廣為人知的且經過測試的實現,因此可以是一個不錯的選擇。 關于stackoverflow有很好的討論。
在這種特殊情況下,我們期望實現,因為我們需要不可變的東西,并且我們“不能”信任調用方傳遞不可變的字符序列實現。 或者:我們可以,但是要付出代價。 如果后來通過并修改了StringBuilder ,那么我們矮小的程序庫可能無法正常工作,并且可能會開始責備戰爭。 在設計API和庫時,我們不僅應考慮可能的使用,還應考慮實際的平均使用情況。
一個庫好壞了,沒有使用好。
這也可以應用于其他產品,不僅是庫,而且可能會導致太大的問題(物理和武器)。
翻譯自: https://www.javacodegeeks.com/2014/10/why-to-use-string.html
vb使用字符串分隔字符串
總結
以上是生活随笔為你收集整理的vb使用字符串分隔字符串_为什么要使用字符串的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何选购二手笔记本电脑如何买卖二手电脑
- 下一篇: 图片大小 媒体大小自适应_自适应堆大小