La matriz ASP es un contenedor relativamente fácil de usar para cargar grandes cantidades de datos.
1. Definir matriz
Hay dos formas: DIM y REDIM.
DIM define una matriz de números fijos y tipos de datos; REDIM es diferente. Puede definir diferentes tipos de datos y también puede definir datos cuyo número no es fijo. Compara los siguientes ejemplos. Ejemplos que son todos legales:
código de programa
Dim myarray(5,2)
Redimificar mi matriz (5,2)
Ejemplos en los que lo primero es incorrecto y lo segundo es legal:
código de programa
norte=10
Dim myarray(n)
Redimificar mi matriz (n, 2)
Además, REDIM también puede definir matrices de tipos indeterminados, como por ejemplo:
código de programa
Redimificar mi matriz (10)
2. Número de matrices
El subíndice especificado al definir una matriz con DIM o REDIM representa el subíndice máximo permitido al acceder a la matriz, pero no el número de matrices. De hecho, el número de matrices unidimensionales siempre es igual a (subíndice máximo + 1) y el acceso se realiza uno por uno desde 0 hasta el subíndice.
Por ejemplo:
código de programa
Dim myarray(5)
Hay 6 elementos de matriz definidos, a saber:
Contenido de la cita
mimatriz(0), mimatriz(1), mimatriz(2), mimatriz(3), mimatriz(4), mimatriz(5)
Otro ejemplo:
código de programa
Redimir esta matriz (2,5)
De hecho, se define una matriz bidimensional de (2+1)*(5+1)=1 8.
En este caso, ¿podemos definir una matriz con un solo elemento sin ambigüedades? La respuesta es: no.
Como se mencionó antes,
código de programa
Redimificar esta matriz(1)
La matriz definida en realidad tiene (1+1) elementos de matriz, pero tiene el siguiente aspecto:
código de programa
Redimificar esta matriz (0)
La sintaxis es incorrecta. Por lo tanto, no se puede definir una matriz con un solo elemento de matriz. De hecho, lo que se menciona anteriormente es sólo su estado predeterminado. De hecho, al definir una matriz, puede definir el número de matrices e incluso los números inicial y final de los subíndices definiendo el inicio y el final de los subíndices. Por ejemplo:
código de programa
Redimir esta matriz (1980 a 1990)
Se define una matriz que contiene 11 elementos, con subíndices de 1980 a 1990.
3. Acerca de la función UBOUND
UBOUND devuelve el subíndice máximo de una matriz unidimensional, no el número de elementos. Por ejemplo:
código de programa
Dim Myarray(5)
,Entonces
código de programa
UBOUND (mi matriz)
El valor devuelto es 5, no 6. UBOUND también se puede aplicar a matrices bidimensionales. Cuando se aplica a una matriz bidimensional, devuelve el valor máximo del primer índice.
Por ejemplo:
código de programa
Dim Myarray(6,3)
, Entonces
código de programa
UBOUND (mi matriz)
El valor devuelto es 6, no 7, y mucho menos 18 (6*3=18).
Para devolver el valor máximo del segundo subíndice, utilice:
código de programa
UBOUND(Miarray,2)
.
Correspondiente a UBOUND hay otra función: LBOUND, que devuelve el subíndice mínimo de la matriz. Similar a UBOUND, LBOUND(Myarray,2) devuelve el valor mínimo del segundo subíndice de la matriz MYARRAY. Entonces, para ser precisos, el número de elementos de la matriz unidimensional Myarray es:
código de programa
UBOUND(Mi matriz)-LBOUND(Mi matriz)+1
, y el número de elementos de la matriz bidimensional es:
código de programa
(UBOUND(Mi matriz)-LBOUND(Mi matriz)+1)*(UBOUND(Mi matriz,2)-LBOUND(Mi matriz,2)+1)
http://www.knowsky.com/
Matrices multidimensionales, etc.
4. Definición de matriz
código de programa
DimMyArray
Mimatriz = Matriz(1,5,123,12,98)
Matriz expandible
código de programa
DimMyArray()
para i = 0 a 10
ReDim PReserve MyArray(i)
Mimatriz(i)=i
próximo
Divide una cadena y devuelve una serie de resultados divididos
código de programa
DimMyArray
Mimatriz = Dividir(tempcnt,chr(13)&chr(10))
Para I = Lbound(MyArray) a Ubound(MyArray)
Respuesta.Escribir MyArray(I) & <br>
Próximo
5. Función de clasificación de matrices
código de programa
Clasificación de funciones (aria)
Seguir comprobando = VERDADERO
Hacer hasta que KeepChecking = FALSO
Seguir comprobando = FALSO
Para I = 0 a UBound(ary)
Si I = UBound(ary) entonces salga por
Si ary(I) > ary(I+1) Entonces
PrimerValor = ario(I)
SegundoValor = ario(I+1)
ario(I) = SegundoValor
ario(I+1) = PrimerValor
Seguir comprobando = VERDADERO
Terminar si
Próximo
Bucle
ordenar = ario
Función final
Ejemplo de aplicación de función de clasificación de matrices
código de programa
DimMyArray
Mimatriz = Matriz(1,5,123,12,98)
Mimatriz = Ordenar(Mimatriz)
Para I = Lbound(MyArray) a Ubound(MyArray)
Respuesta.Escribir MyArray(I) & <br>
Próximo
6. Utilice matrices en la aplicación y la sesión.
código de programa
Bloqueo de aplicación
Aplicación (StoredArray) = MyArray
Aplicación.Desbloquear
LocalArray = Aplicación (StoredArray)
Sobrescribir matriz en la aplicación
código de programa
Bloqueo de aplicación
Aplicación (StoredArray) = LocalArray
Aplicación.Desbloquear
El uso de la sesión es el mismo que el de la aplicación.
7. Importar datos de la base de datos a la matriz.
Este método lo uso a menudo en la integración de funciones de código.
código de programa
DimMyArray
Obtener todos los registros
Mimatriz = RS.GetRows
Consigue los primeros 10 registros
Mimatriz = RS.GetRows(10)
Para fila = 0 a UBound(MyArray, 2)
Para col = 0 a UBound(MyArray, 1)
Respuesta.Escribir (col, fila) & <br>
Próximo
Próximo