技术开发 频道

LotusScript基本语法知识一

    【IT168 技术文章】

    1.声明变量

    Dim Variablename as type

    dim是dimension的缩写,为变量的值在内存中创建一个空间。

    Variablename 是变量的名称,一个变量的名称一定要以字母开头,其后可以是字母、任何数字以及下划线,变量的名称不区分大小写,最多可容纳40个字符。Lotus中有一些保留字,大部分是指令和语句,它们不能被用做变量名。

    type是数据类型,可以是Boolean、Byte、Integer、Long、Single、Double、Currency、String、Variant 当然以后在介绍面象对象的时候还涉及到类和对象的定义,也是这个声明格式,这些在以后再介绍。

    类型                   值                                                                                        Size

    Boolean     真 (-1) 或 假 (0)                                                                           2字节

    Byte          从0到255的整数                                                                              1字节

    Integer     从-32768到32767的整数                                                                 2字节

    Long         从-2147483648到2147483647的整数                                             4字节

    Single       从-3.402823 E+38到3.402823E+38的任何数字                                4字节

    Double     从-1.7976931348623158E+308到

    1.7976931348623158E+308的任何数字                                          8字节

    Currency  从-922337203685411.5807到-922337203685411.5807的任何数字。

    货币变量可能多有4个十进制位置                                                           8字节

    String       任何无格式文本值                                                                          每个字符两2个字节

    Variant    任何值                                                                                               16字节

    2.列表定义

    List 类型 为1 维的数组

    用户可以通过给Dim语句添加List运算符来声明一个列表。

    声明:Dim Variablename List as Type

    Dim :定义变量

    Variablename 列表的名称

    List 定义为列表

    Type 列表的类型

    例子:

    Dim PriceList List as Currency

    Dim ItemName as String

    PriceList(“apple”)=1.05

    ItemName=”Oranges”

    PriceList(itemname)=1.85

    Messagebox PriceList(itemname)

    输出结果为:弹出对话框 1.85

    3.数组

    数组是一组顺序下具有一系列的值,有一维数组,二维数组,LotusScript最多可以有8维。

    声明一维数组:Dim valArray(5) as Integer 或 Dim ValArray(0 to 5) as integer

    这个数组的下标是从0开始到5,也就是数组ValArray有6个元素。

    声明二维数组:dim TwoArray(1 to 5, 1 to 4) as Integer

    这个数组的第一个元素是TwoArray(1,1) ,是一个二维数组

    使用Option Base来改变数组的底数

    当使用数组时,如果你的大脑能够很自然地想清楚它是从0开始而不是从1开始的,那么无论何时你要给arrayname(0)赋值都将不是问题。但是如果对这一点存在疑问,你可以通过改变LotusScript的功能来采取一些措施。如果你进入到Options例程中,便可以添加”Option Base n”的命令行,n是默认的数组底限。添加Option Base 1,将使默认的数组底限设置为1,则arrayname(1)会成为数组的第一个成员。然而,当你使用多维数组的时候,需要小心使用Option Base. Option Base将把一个三维数组的中心从(0,0,0)移动到(1,1,1),这是一个有趣的数学问题。

    声明变长数组:Redim valarray(5) as string

    变长数组是指原来的数组个数不够用时,需要重新定义数组的长度,有两种情况:

    一. 先定义了一个数组,但是没有声明个数(dim valarray() as string),在以后用到的时候才用Redim来重新声明。如下例所示,输出zys字符串:

    Dim valarray() as string

    Redim valarray(4) as string

    valarray(0)=”zys”

    messagebox valarray(0)

    二. 先声明了一个数组,并且给这个数组中的元素赋了值,然后想要重新定义数组的个数,可用Redim来重新声明,如果用户已经给数组赋了值,并且想保留它们,可以用PRESERVE关键字来进行保存,以防重新改变它们大小时,值被擦除掉。如下例所示:

    例1:

    Redim valarray(1) as integer

    Valarray(0)=1

    Redim valarray(2) as integer

    Messagebox valarray(0)

    输出结果为:0

    例2:

    dim valarray() as integer

    Redim valarray(2) as integer

    Valarray(0)=1

    Messagebox valarray(0)

    输出结果为:0

    例3:

    以下是重新定义了数组后保留了原值的例子:

    Redim valarray(1) as integer

    Valarray(0)=1

    Redim preserve valarray(2) as integer

    Messagebox valarray(0)

    输出结果为:1

    例1和例2的区别就在于第一次定义后能不能附值,在例1中第一次定义用的是redim, redim定义数组时必须定义该数组的上界,且定义以后可以直接赋值使用; 而例2中第一次定义用的是dim, dim定义数组时如果定义了上界,则可以直接赋值使用,并且不能再用redim重新定义,如果没有定义上界,则不能直接使用,并且必须用redim重新定义后才能赋值使用。

    两关于数组的特殊的函数

    Lbound(valarray) 输出数组的下界

    Ubound(valarray) 输出数组的上界
 

0