บทความนี้ส่วนใหญ่แนะนำ ASP ใช้คลาสที่คล้ายกับฟังก์ชั่น HASHMAP
HashMap ใน Java นั้นสะดวกในการเข้าถึงข้อมูล แต่น่าเสียดายที่ไม่มีคลาสที่คล้ายกันใน ASP ผู้เขียนต้องการประเภทข้อมูลที่คล้ายกันในโปรแกรมการพัฒนาดังนั้นเขาจึงสร้างคลาสที่สามารถคล้ายกับฟังก์ชั่น HashMap ซึ่งสามารถใช้การดำเนินการเข้าถึงคีย์-ค่า ฯลฯ ข้อมูลที่เข้าถึงได้อาจเป็นประเภทพื้นฐานใด ๆ ใน ASP
ด้านล่างคือรหัสของโปรแกรมซึ่งสามารถทำงานได้โดยตรงใน ASP ที่ว่างเปล่า
- -
- setvevb = newjb
- 'กำหนดค่าให้กับวัตถุ MP
- vevb.putva, vevb.com
- vevb.putvb, www.vevb.net
- vevb.putvc, http: //www.vevb.net
- response.write [จำนวนคีย์ค่า]: & vevb.count
- Response.write <br>
- Response.write [a]: & vevb.getv (a)
- Response.write <br>
- Response.write: & vevb.getv (b)
- Response.write <br>
- Response.write [c]: & vevb.getv (c)
- Response.write <Hr>
- 'ลบค่าคีย์ด้วยคีย์ B
- vevb.delvb
- response.write [จำนวนคีย์ค่า]: & vevb.count
- Response.write <br>
- Response.write [a]: & vevb.getv (a)
- Response.write <br>
- Response.write: & vevb.getv (b)
- Response.write <br>
- Response.write [c]: & vevb.getv (c)
- Response.write <Hr>
- 'ล้างค่าทั้งหมดของ VEVB
- vevb.clear
- 'กำหนดค่าคีย์ของคีย์เป็น c ใหม่
- vevb.putvc, http: //www.vevb.net
- response.write [จำนวนคีย์ค่า]: & vevb.count
- Response.write <br>
- Response.write [a]: & vevb.getv (a)
- Response.write <br>
- Response.write: & vevb.getv (b)
- Response.write <br>
- Response.write [c]: & vevb.getv (c)
- Response.write <Hr>
- classmtmap
- Privatearr ()
- privatearr_len
- 'ตัวสร้าง
- Privatesubclass_initialize
- 'โดยที่ arr (0, n) เป็นคีย์, arr (1, n) คือค่า
- arr_len = 0
- Redimarr (1, arr_len)
- enddub
- 'การมอบหมายถ้ามีการเขียนทับ
- Publicsubputv (K, V)
- dimis_update
- is_update = false
- arr_len = ubund (arr, 2)
- fori = 0toarr_len-1
- ifk = arr (0, i) แล้ว
- arr (1, i) = v
- is_update = true
- ออกจาก
- endif
- ต่อไป
- ifnotis_updatethen
- arr_len = arr_len+1
- redempreservearr (1, arr_len)
- arr (0, arr_len) = k
- arr (1, arr_len) = v
- endif
- enddub
- 'รับคีย์ค่าด้วยคีย์ k
- PublicFunctionGetV (K)
- dimv
- V =
- fori = 0toarr_len
- ifk = arr (0, i) แล้ว
- v = arr (1, i)
- ออกจาก
- endif
- ต่อไป
- getV = v
- endfunction
- 'ลบค่าคีย์ด้วยคีย์ k
- Publicsubdelv (K)
- arr_len = ubund (arr, 2)
- fori = 0toarr_len
- ifk = arr (0, i) แล้ว
- v = arr (1, i)
- fork = itoarr_len-1
- arr (0, k) = arr (0, k+1)
- arr (1, k) = arr (1, k+1)
- ต่อไป
- arr_len = arr_len-1
- redempreservearr (1, arr_len)
- ออกจาก
- endif
- ต่อไป
- enddub
- 'รับจำนวนคีย์ค่าใน VEVB
- PublicPropertygetCount ()
- count = arr_len
- ปลายทาง
- 'ล้างค่าคีย์ทั้งหมดใน VEVB
- Publicsubclear ()
- arr_len = 0
- Redimarr (1,1)
- enddub
- endclass
- -
ข้างต้นคือวิธีที่ ASP สามารถใช้คลาสที่คล้ายกับฟังก์ชั่น HashMap ได้อย่างไร