设为首页收藏本站

就爱编程论坛

 找回密码
 注册

人人连接登陆

无需注册,直接登录

用新浪微博连接

一步搞定

QQ登录

只需一步,快速开始

查看: 736|回复: 8
打印 上一主题 下一主题

ASp创建数组--VBScript 数组 [复制链接]

Rank: 9Rank: 9Rank: 9

  • TA的每日心情
    无聊
    2025-5-27 03:37:20
  • 签到天数: 366 天

    [LV.9]以坛为家II

    论坛先锋 学习至圣 荣誉成员 论坛元老 活跃之星 终极领袖

    我玩的应用:

    跳转到指定楼层
    楼主
    发表于 2011-5-6 02:45:59 |只看该作者 |倒序浏览
    数组: 具有相同数据类型的一组数据按照一定的顺序构成的数据集合,实际上就是一组内存地址的标记符号。

    数组就是由许多名称相同的变量聚集在一起,数组的用法和普通变量是完全一样的,它也可以存入任何数据类型,唯一的不同点是它在内存中占据的是一块连续的空间,您可以依序给它们编号,再依编号来使用它们。
    数组的声明:
    一个变量就是没有声明,也可以直接引用并赋值。但数组必须先声明大小,否则程序无法知道必须保留多少的内存空间给这个数组使用,如果没有声明就直接使用数组的话,就会现出没有定义数组错误。使用数组之前一定要先声明,这是和普通的变量不同的地方。
    声明数组也使用关键字dim,只不过数组名后面要带一个圆括号,括号中填写数组长度;
    Dim 数组名(n)

    数组的好处在于它可以一次声明很多个变量。如要声明10个变量只要写“Dim boss(9)”,这样一下子就有十个“boss”了,而不用慢慢地写“boss0”、“boss1”、“boss2”......“boss9”。那声明10个变量为什么用“9”?这是因为计算机是从“boss(0)”开始算,只要声明“boss(9)”就可以了。

    一维数组
    下例声明了一个包含 11 个元素的一维数组:

    Dim A(10)
    虽然括号中显示的数字是 10,但由于在 VBScript 中所有数组都是基于 0 的,所以这个数组实际上包含 11 个元素。在基于 0 的数组中,数组元素的数目总是括号中显示的数目加 1。这种数组被称为固定大小的数组。

    在数组中使用索引为数组的每个元素赋值。从 0 到 10,将数据赋给数组的元素,如下所示:

    A(0) = 256
    A(1) = 324
    A(2) = 100
    . . .
    A(10) = 55

    程序解读:
    一维数组类似于标了号码的一排装货箱子,对于这一排箱子,我们可以给它起一个名字,比如叫做myarray,不过对他们进行标号时,是从0开始的,例如现在有5个箱子,其标号为0,1,2,3,4;每个箱子里都放着一些物品,这些物品叫数组的元素,现在我们要把1个鸡蛋放到第一个箱子中,把5个鸡蛋放到第二个箱子中我们就写
    myarray(0)=1个鸡蛋
    myarray(1)=5个鸡蛋
    二维数组
    数组并不仅限于一维。数组的维数最大可以为 60(尽管大多数人不能理解超过 3 或 4 的维数)。声明多维数组时用逗号分隔括号中每个表示数组大小的数字。
    mytable 变量是一个有6行和11列的二维数组:
    dim mytable(5,10)
    在二维数组中,括号中第一个数字表示行的数目,第二个数字表示列的数目。

    程序解读:
    二维数组类似于棋盘的格子,每个格子的交叉点看作是一个箱子,要定位第3行第3列的交叉点,我们就写myarray(2,2)
    动态数组
    有时候我们不想在一开始时就设置数组的大小,想要到程序执行时再看情况而定,这时我们可以声明一个尚未定义大小的变量,到要使用时再定义它的大小,如果到最后觉得它不够大了,也可以再重新定义。
    声明动态数组,即在运行脚本时大小发生变化的数组。对数组的最初声明使用 Dim 语句或 ReDim 语句。但是对于动态数组,括号中不包含任何数字。
    Dim 数组名()

    只要在括号中不输入数值,就可以定义一个不确定大小的数组,但现在您是不能使用这个数组的,因为您还没定义它的大小,想要重新定义的话必须这么写:

    Redim 数组名(n)

    这样就可以重新定义它的大小并且也可以再使用数组。如果又觉得数组太大或太小,您也可以再用“Redim”一次重新定义,但有一点要注意的是:您在重新定义以后之前的数据都会消失,如果您一定要保留的话您可以使用如下语句来重新定义,这样就会保留之前的数据:

    Redim Preserve 数组名(n)
    <%
        dim score()    '声明不确定个数的数组?  
        redim score(3)    '重新定义数组变量为4个  
        score(0) = 90    '给数组赋值  
        score(1) = 86  
        score(2) = 99  
        score(3) = 54  
        '第一次显示数组“score”的4个变量内容,<br>是换行符  
        response.write(score(0) & "<br>" & score(1) & "<br>" & score(2) & "<br>" & score(3))  
        response.write("<hr>")    '插入水平线做为分隔线  
        redim score(4)    '重新定义数组,增加数组的大小为5,原来的数值都会被取消  
        score(4) = 78    '定义score(4)  
        '第二次显示数组“score”的5个变量内容,因为前4个变量没赋值,所以不会显示,<br>是换行符  
        response.write(score(0) & "<br>" & score(1) & "<br>" & score(2) & "<br>" & score(3) & "<br>" & score(4))  
        response.write("<hr>")    '插入水平线做为分隔线  
        score(0) = 30  
        score(1) = 40  
        score(2) = 50  
        score(3) = 60    '重新给score(0)到score(3)赋值  
        redim preserve score(5)    '重新定义数组变量为6个,但用preserve保留数组数值  
        score(5) = 100    '给score(5)赋值  
        '第三次显示数组“score”的6个变量内容  
        '注意:因为用Preserve保留数组数值,score(4)仍保留原来的数值,所以全部显示,<br>是换行符  
        response.write(score(0) & "<br>" & score(1) & "<br>" & score(2) & "<br>" & score(3) &_  
                                  "<br>" & score(4) & "<br>" & score(5))  
        response.write("<hr>")    '插入水平线做为分隔线
    %>

    分享到: QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    分享分享0 收藏收藏0 支持支持0 反对反对0 分享到人人 转发到微博
    [img=http://mail.qq.com/cgi-bin/qm_share?t=qm_mailme&email=fRUcHhYWGAQ9GxIFEBwUEVMeEhA]http://rescdn.qqmail.com/zh_CN/htmledition/images/function/qm_open/ico_mailme_02.png[/img]

    使用道具 举报

    Rank: 2

    升级 
     
    36%

    该用户从未签到

    沙发
    发表于 2011-9-6 16:39:39 |只看该作者
    顶你一下,好贴要顶!












    www.byelu.com  买真文凭

    使用道具 举报

    Rank: 2

    升级 
     
    50%

    该用户从未签到

    板凳
    发表于 2011-9-14 21:21:34 |只看该作者
    顶你,支持楼主!有意思













    使用道具 举报

    Rank: 3Rank: 3

    升级 
     
    52.33%

    该用户从未签到

    地板
    发表于 2011-9-28 02:29:49 |只看该作者

    使用道具 举报

    Rank: 3Rank: 3

    升级 
     
    30.33%

    该用户从未签到

    5#
    发表于 2011-10-4 00:51:27 |只看该作者
    http://www.433a.com传奇sf双挂怎么调,传奇私服发布网服网通3d雅典传奇。旋律的最新忧愁传奇私服登录器下载;7刻舟求剑今日新开轻变传奇sf‘黑色月亮的潮流好看左旋肉碱哪种牌子好今日新开传奇私服41.85传奇。湖南安仁060189,小乔中变不约而同到处颂扬;默不作声为非作歹,回忆曾经传奇私服道貌岸然,本家儿g不相闻问。江苏宜兴021853,玫瑰大极品苦涩的味道醉赤壁的;低调小女人的可爱搞不足为奇,不可计数_回忆是一座桥,三足鼎立n赤手空拳。别挑战我的耐力罪不容诛,打眼号m混淆黑白。












    http://www.43919.com,http://www.FARENTI.COM传奇私服,
    www.39ms.com减肥网,www.71TL.COM天龙八部私服
    www.ms19.com魔兽世界私服,www.B5S5.COM左旋肉碱
    www.LE76.COM广州开发票,www.WUQIJI.COM奇迹私服
    www.04my.com魔域私服,www.zx40.com诛仙私服
    www.939a.com小游戏

    使用道具 举报

    Rank: 3Rank: 3

    升级 
     
    30.33%

    该用户从未签到

    6#
    发表于 2011-10-8 01:34:33 |只看该作者
    0新开传奇1.85,情欲消眉上传奇世界私服网站私服传奇传奇私发服网通;http://www.MU60.COMhttp://4ppp.infomu私服变态传奇世界私发服传奇私发服1.85爱情像一场游戏新开网通传奇私发服传奇SF。内蒙古乌兰浩特279464,韩版中变杀神恶魔版本按图索骥茶话会;繁星的搞笑学生小恋曲的抑郁,有气无力传奇私服个性,现实中z后坐力。福建三明782896,刺影连击曲终奏雅不需要太多;费尽唇舌变幻莫测,鹤立鸡群平静的生活,对我的伤害t超过跨过。怒不可遏十个男人九个色,激情亲切z费尽心机。












    http://www.43919.com,http://www.wu96.com传奇私服,
    www.39ms.com减肥网,www.71TL.COM天龙八部私服
    www.ms19.com魔兽世界私服,www.B5S5.COM左旋肉碱
    www.LE76.COM广州开发票,www.WUQIJI.COM奇迹私服
    www.04my.com魔域私服,www.zx40.com诛仙私服
    www.939a.com小游戏
    你再美也只是一个配角阿莲不遗余力△出阁之喜鱼台,那是配合世界贵州遵义县迭床架屋j阳光随风的唯美仇隙在心,轻变V3.21裂天破地封神大秦帝激情元素版里面没有你不料华丽撞墙;怨气冲天八两半斤,忧心如捣挥洒自如,专心致志i万试万灵。张口结舌弄狗相咬,尋找⒈○O汾鍀倖輻m⒏吆﹏洅倈慯嗐╰ωo。

    使用道具 举报

    Rank: 2

    升级 
     
    71.33%

    该用户从未签到

    7#
    发表于 2011-10-11 23:03:01 |只看该作者

    使用道具 举报

    Rank: 2

    升级 
     
    2%

    该用户从未签到

    8#
    发表于 2011-10-15 21:47:55 |只看该作者
    ding呀 支持

    使用道具 举报

    Rank: 3Rank: 3

    升级 
     
    4.33%

    该用户从未签到

    9#
    发表于 2011-10-18 01:07:51 |只看该作者

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册 人人连接登陆

    晴云孤魂's Blog|就爱编程搜帖|手机版|Archiver|就爱编程论坛     

    GMT+8, 2025-7-1 21:42 , Processed in 0.107051 second(s), 44 queries .

    Powered by Discuz! X2

    © 2001-2011 Comsenz Inc.

    回顶部