TStringHash哈希表使用
TStringHash的key必須是string類型,value必須是integer類型。TStringHash.add(key, value)在網上說當長度不夠時,自動擴展。於是TStringHash.Create(0)初始化長度為0。
運行以下代碼:
uses System.IniFiles;
procedure TForm2.Button1Click(Sender: TObject);
var
tmp : TStringHash;
i : Integer;
key : string;
begin
try
tmp := TStringHash.Create(0);
for i := 1 to 100 do
begin
key := '數字' + inttostr(i);
tmp.Add(key, i);
end;
finally
tmp.Free;
end;
end;
出現異常:Division by zero。
將TStringHash.Create(0)改為TStringHash.Create(1)後,正常運行,說明add方法確實能夠擴展長度,但是必須初始化長度不為0.
最後更新:2017-05-07 07:57:21
上一篇:
關於數據科學家麵試的那些事兒
下一篇:
軟件設計師考試筆記:UML統一建模語言
Linux Deepin:中國 Linux 桌麵界的正能量
正則表達式學習參考
2017杭州·雲棲大會明天開幕 袁家軍參觀展館
rtop:一個通過 SSH 監控遠程主機的交互式工具
如何將bug殺死在搖籃裏?
阿裏巴巴 Java 開發手冊之安全規約(五)-------我的經驗(逐步完善中)
解決linux根目錄磁盤空間滿
oracle中報ora-01033:oracle initializationg or shutdown in progress錯
java中short s=s+1和s+=1的區別
Cracking the Coding Interview:: 尋找有環鏈表的環路起始節點