A matriz ASP é um contêiner relativamente fácil de usar para carregar grandes quantidades de dados.
1. Definir matriz
Existem duas maneiras: DIM e REDIM.
DIM define uma matriz de número fixo e tipo de dados é diferente. Ele pode definir diferentes tipos de dados e também pode definir dados cujo número não é fixo. Compare os exemplos a seguir. Exemplos que são todos legais:
código do programa
Escurecer minha matriz(5,2)
Redimensionar minha matriz(5,2)
Exemplos em que o primeiro está errado e o último é legal:
código do programa
n=10
Escurecer minha matriz (n)
Redimensionar meuarray(n,2)
Além disso, REDIM também pode definir arrays de tipos indeterminados, como:
código do programa
Redimensionar minha matriz(10)
2. Número de matrizes
O subscrito especificado ao definir um array com DIM ou REDIM representa o subscrito máximo permitido ao acessar o array, mas não o número de arrays. Na verdade, o número de arrays unidimensionais é sempre igual a (subscrito máximo + 1), e o acesso é realizado um a um a partir de 0 até o subscrito.
por exemplo:
código do programa
Escurecer minha matriz(5)
Existem 6 elementos de array definidos, a saber:
Citar conteúdo
minhamatriz(0), minhamatriz(1), minhamatriz(2), minhamatriz(3), minhamatriz(4), minhamatriz(5)
Outro exemplo:
código do programa
Redimensione esta matriz(2,5)
Na verdade, uma matriz bidimensional de (2+1)*(5+1)=1 8 é definida.
Neste caso, podemos definir um array com apenas um elemento de forma inequívoca? A resposta é: não.
Como mencionado antes,
código do programa
Redimensione esta matriz(1)
A matriz definida na verdade possui (1+1) elementos de matriz, mas se parece com:
código do programa
Redimensionar esta matriz(0)
A sintaxe está errada. Portanto, você não pode definir um array com apenas um elemento de array. Na verdade, o que foi mencionado acima é apenas o seu status padrão. Na verdade, ao definir um array, você pode definir o número de arrays e até mesmo os números inicial e final dos subscritos, definindo o início e o fim dos subscritos. por exemplo:
código do programa
Redimensione esta matriz (1980 a 1990)
É definido um array contendo 11 elementos, com subscritos de 1980 a 1990.
3. Sobre a função UBOUND
UBOUND retorna o subscrito máximo de uma matriz unidimensional, não o número de elementos. por exemplo:
código do programa
Dim Myarray(5)
,Então
código do programa
UBOUND(Minha matriz)
O valor retornado é 5, não 6. UBOUND também pode ser aplicado a matrizes bidimensionais. Quando aplicado a um array bidimensional, retorna o valor máximo do primeiro índice.
por exemplo:
código do programa
Dim Myarray (6,3)
, Então
código do programa
UBOUND(Minha matriz)
O valor retornado é 6, não 7, muito menos 18 (6*3=18).
Para retornar o valor máximo do segundo subscrito, use:
código do programa
UBOUND(Minhamatriz,2)
.
Correspondente a UBOUND está outra função: LBOUND, que retorna o subscrito mínimo do array. Semelhante a UBOUND, LBOUND(Myarray,2) retorna o valor mínimo do segundo subscrito do array MYARRAY. Então, para ser mais preciso, o número de elementos do array unidimensional Myarray é:
código do programa
UBOUND(Minhamatriz)-LBOUND(Minhamatriz)+1
, e o número de elementos da matriz bidimensional é:
código do programa
(UBOUND(Minhamatriz)-LBOUND(Minhamatriz)+1)*(UBOUND(Minhamatriz,2)-LBOUND(Minhamatriz,2)+1)
http://www.knowsky.com/
Matrizes multidimensionais e assim por diante.
4. Definição de matriz
código do programa
DimMyArray
MinhaArray = Matriz(1,5,123,12,98)
Matriz expansível
código do programa
DimMyArray()
para eu = 0 a 10
ReDim Preserva MyArray(i)
MinhaArray(i)=i
próximo
Divide uma string e retorna uma matriz de resultados divididos
código do programa
DimMyArray
MeuArray = Dividir(tempcnt,chr(13)&chr(10))
Para I = Lbound(MyArray) para Ubound(MyArray)
Response.Write MyArray(I) & <br>
Próximo
5. Função de classificação de array
código do programa
Classificação de função (ária)
KeepChecking = VERDADEIRO
Faça até KeepChecking = FALSE
KeepChecking = FALSO
Para I = 0 para UBound(ary)
Se I = UBound(ary) então saia para
Se ary(I) > ary(I+1) Então
PrimeiroValor = ary(I)
SegundoValor = ary(I+1)
ary(I) = SegundoValor
ary(I+1) = PrimeiroValor
KeepChecking = VERDADEIRO
Terminar se
Próximo
Laço
Classificar = ary
Função final
Exemplo de aplicação de função de classificação de array
código do programa
DimMyArray
MinhaArray = Matriz(1,5,123,12,98)
MeuArray = Classificar(MeuArray)
Para I = Lbound(MyArray) para Ubound(MyArray)
Response.Write MyArray(I) & <br>
Próximo
6. Use arrays em aplicação e sessão
código do programa
Aplicativo.Lock
Aplicativo (StoredArray) = MeuArray
Aplicativo.Desbloquear
LocalArray = Aplicativo (StoredArray)
Substituir matriz no aplicativo
código do programa
Aplicativo.Lock
Aplicativo(StoredArray) = LocalArray
Aplicativo.Desbloquear
O uso da sessão é igual ao do aplicativo
7. Importe dados do banco de dados para o array
Este método é frequentemente usado por mim na integração de funções de código.
código do programa
DimMyArray
Obtenha todos os registros
MeuArray = RS.GetRows
Obtenha os primeiros 10 registros
MeuArray = RS.GetRows(10)
Para linha = 0 Para UBound(MyArray, 2)
Para col = 0 Para UBound(MyArray, 1)
Response.Write (coluna, linha) & <br>
Próximo
Próximo