Artikel ini terutama memperkenalkan kelas -kelas implementasi ASP yang mirip dengan fungsi hashmap
HashMap di Java sangat nyaman untuk mengakses data, tetapi sayangnya tidak ada kelas serupa di ASP. Penulis membutuhkan tipe data yang serupa dalam program pengembangan, jadi ia membangun kelas yang pada dasarnya dapat mirip dengan fungsi hashmap, yang dapat mengimplementasikan operasi akses nilai kunci, dll. Data yang diakses dapat berupa jenis dasar dalam ASP.
Di bawah ini adalah kode program, yang dapat langsung dijalankan dalam ASP kosong.
- <%
- setVevB = newjb
- 'Tetapkan nilai ke objek MP
- vevb.putva, vevb.com
- vevb.putvb, www.vevb.net
- vevb.putvc, http: //www.vevb.net
- response.write [jumlah nilai kunci]: & 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>
- 'Hapus nilai kunci dengan kunci b
- vevb.delvb
- response.write [jumlah nilai kunci]: & 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>
- 'Hapus semua nilai VEVB
- vevb.clear
- 'Tetapkan kembali nilai kunci dari kunci ke c
- vevb.putvc, http: //www.vevb.net
- response.write [jumlah nilai kunci]: & 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
- 'Konstruktor
- privatesubclass_initialize
- 'Di mana arr (0, n) adalah kunci, arr (1, n) adalah nilai
- arr_len = 0
- redimarr (1, arr_len)
- endsub
- 'Tugas, jika ada, ditimpa
- publicsubputv (k, v)
- dimis_update
- is_update = false
- arr_len = ubund (arr, 2)
- fori = 0toarr_len-1
- IFK = ARR (0, i) Lalu
- arr (1, i) = v
- is_update = true
- keluar
- endif
- Berikutnya
- IFNOTIS_UPDATETHEN
- arr_len = arr_len+1
- redempreservearr (1, arr_len)
- arr (0, arr_len) = k
- arr (1, arr_len) = v
- endif
- endsub
- 'Dapatkan nilai kunci dengan kunci k
- PublicFunctionGetV (k)
- DIMV
- v =
- fori = 0toarr_len
- IFK = ARR (0, i) Lalu
- v = arr (1, i)
- keluar
- endif
- Berikutnya
- getv = v
- fungsi endfungsi
- 'Hapus nilai kunci dengan kunci k
- PublicsubDelv (K)
- arr_len = ubund (arr, 2)
- fori = 0toarr_len
- IFK = ARR (0, i) Lalu
- v = arr (1, i)
- fork = itoarr_len-1
- arr (0, k) = arr (0, k+1)
- arr (1, k) = arr (1, k+1)
- Berikutnya
- arr_len = arr_len-1
- redempreservearr (1, arr_len)
- keluar
- endif
- Berikutnya
- endsub
- 'Dapatkan jumlah nilai kunci di VEVB
- publicpropertygetCount ()
- hitung = arr_len
- Endproperty
- 'Hapus semua nilai kunci di VEVB
- publicsubclear ()
- arr_len = 0
- redimarr (1,1)
- endsub
- endclass
- %>
Di atas adalah bagaimana ASP dapat mengimplementasikan kelas yang mirip dengan fungsi hashmap.