Эта статья в основном представляет ASP реализует классы, аналогичные функциям HashMap
Hashmap в Java очень удобен для доступа к данным, но, к сожалению, в ASP нет аналогичного класса. Автор нуждаются в аналогичных типах данных в программе разработки, поэтому он создал класс, который в основном может быть похож на функцию HashMap, которая может реализовать операции доступа к ключевым значениям и т. Д.
Ниже приведен код программы, который можно напрямую запускать в пустом 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)
- заканчивая
- 'Назначение, если присутствует, перезаписать
- 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
- Выход
- эндиф
- следующий
- ifnotis_updatethen
- arr_len = arr_len+1
- redempreservearr (1, arr_len)
- arr (0, arr_len) = k
- arr (1, arr_len) = v
- эндиф
- заканчивая
- 'Получите значение ключа с ключом K
- publicfunctiongetg (k)
- димв
- v =
- fori = 0toarr_len
- ifk = arr (0, i) затем
- v = arr (1, i)
- Выход
- эндиф
- следующий
- getV = v
- конечная функция
- 'Удалить значение ключа с помощью Key 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)
- Выход
- эндиф
- следующий
- заканчивая
- 'Получите количество значений ключей в VEVB
- publicpropertygetCount ()
- count = arr_len
- EndProperty
- 'Очистить все значения ключей в VEVB
- publicsubclear ()
- arr_len = 0
- Redimarr (1,1)
- заканчивая
- Endclass
- %>
Выше, как ASP может реализовать классы, похожие на функции HashMap.