以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]帮助文件中基本概念 字典的示例不明白  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=97232)

--  作者:Ellen
--  发布时间:2017/3/8 14:16:00
--  [求助]帮助文件中基本概念 字典的示例不明白
在帮助文件 http://www.foxtable.com/help/index.htm?page=2256.htm


Dim 
zd As New Dictionary(Of IntegerString)
zd
.Add(1,"苹果")
zd
.Add(2,"香蕉")
zd
.Add(3,"波罗")
zd
.Add(4,"桔子")
zd
.Add(5,"桃子")
zd
.Remove(1\'移除键1及其对应的值
zd.Remove(
5\'移除键5及其对应的值
Output.Show(zd(
2)) \'显示键2对应的值
Output.Show(zd(
3)) \'显示键3对应的值
If 
zd.ContainsKey(1) = False Then \'是否存在键1
    zd.Add(1,"苹果")
End If
If 
zd.ContainsValue("桃子") = False Then \'是否存在值"桃子"
    
zd.Add(5,"桃子")
End If
For Each 
k As Integer In zd.Keys \'显示所有键及其对应的值
    
Output.Show(K & ":" & zd(k))
Next

刚开始学习,看到这里就不明白,在命令窗口执行后为什么显示的不是这样:
1:苹果
2香蕉
3波罗
4桔子
5桃子

实际显示却是
3:波罗
4:桔子
1:苹果


2和5去哪了?而且为什么不是按顺序显示的,为什么1苹果到了最下面? 求解释。谢谢!

[此贴子已经被作者于2017/3/8 14:23:44编辑过]

--  作者:有点色
--  发布时间:2017/3/8 14:20:00
--  

 

[此贴子已经被作者于2017/3/8 14:21:17编辑过]

--  作者:Ellen
--  发布时间:2017/3/8 14:25:00
--  
问题在大神眼里肯定弱智,是不是帮助文件看不懂就不要学了?
--  作者:有点色
--  发布时间:2017/3/8 14:26:00
--  

根据remove的先后顺序,add的时候,逐个填入的。

 

比如先后remove  1 3 2,然后add的时候,先会填充2的位置,再填充3,再到1,然后再新增。


--  作者:Ellen
--  发布时间:2017/3/8 14:31:00
--  
[此贴子已经被作者于2017/3/8 14:42:52编辑过]

--  作者:Ellen
--  发布时间:2017/3/8 14:36:00
--  
谁都不要回答这个问题了,捂脸跑了

因为显示区域有限,应该自己用鼠标选择向上拉,才能看完整

问完这个问题才发现的
图片点击可在新窗口打开查看



--  作者:菜鸟王中王
--  发布时间:2017/3/8 17:08:00
--  
以下是引用Ellen在2017/3/8 14:36:00的发言:
谁都不要回答这个问题了,捂脸跑了

因为显示区域有限,应该自己用鼠标选择向上拉,才能看完整

问完这个问题才发现的
图片点击可在新窗口打开查看


替你捂脸