美文网首页
第三十七章 Caché 函数大全 $LISTVALID 函数

第三十七章 Caché 函数大全 $LISTVALID 函数

作者: Cache技术分享 | 来源:发表于2020-09-27 09:51 被阅读0次

第三十七章 Caché 函数大全 $LISTVALID 函数

确定表达式是否为列表。

大纲

$LISTVALID(exp)
$LV(exp)

参数

  • exp 任何有效的表达式。

描述

$LISTVALID确定exp是否为列表,并返回一个布尔值:如果exp为列表,则$LISTVALID返回1;否则,返回0。如果exp不是列表,则$LISTVALID返回0。

可以使用$LISTBUILD$LISTFROMSTRING创建列表,或使用$LIST从另一个列表中提取列表。包含空字符串(“”)作为唯一元素的列表是有效列表。空字符串(“”)本身也被视为有效列表。 (某些$CHAR非打印字符组合,例如$CHAR(1)$CHAR(2,1)$CHAR(3,1,asciicode)也可以返回有效的空列表或单元素列表。)

示例

以下示例均返回1,表示有效列表:

/// d ##class(PHA.TEST.Function).LISTVALID()
ClassMethod LISTVALID()
{
    SET w = $LISTBUILD("Red","Blue","Green")
    SET x = $LISTBUILD("Red")
    SET y = $LISTBUILD(365)
    SET z = $LISTBUILD("")
    WRITE !,$LISTVALID(w)
    WRITE !,$LISTVALID(x)
    WRITE !,$LISTVALID(y)
    WRITE !,$LISTVALID(z)
}
DHC-APP>d ##class(PHA.TEST.Function).LISTVALID()
 
1
1
1
1

以下示例均返回0。数字和字符串(空字符串除外)不是有效列表:

/// d ##class(PHA.TEST.Function).LISTVALID1()
ClassMethod LISTVALID1()
{
    SET x = "Red"
    SET y = 44
    WRITE !,$LISTVALID(x)
    WRITE !,$LISTVALID(y)
}
DHC-APP>d ##class(PHA.TEST.Function).LISTVALID1()
 
0
0

以下示例均返回1。串联,嵌套和省略的值列表均为有效列表:

/// d ##class(PHA.TEST.Function).LISTVALID2()
ClassMethod LISTVALID2()
{
    SET w=$LISTBUILD("Apple","Pear")
    SET x=$LISTBUILD("Walnut","Pecan")
    SET y=$LISTBUILD("Apple","Pear",$LISTBUILD("Walnut","Pecan"))
    SET z=$LISTBUILD("Apple","Pear",,"Pecan")
    WRITE !,$LISTVALID(w_x) ; concatenated
    WRITE !,$LISTVALID(y)   ; nested
    WRITE !,$LISTVALID(z)   ; omitted element
}
DHC-APP>d ##class(PHA.TEST.Function).LISTVALID2()
 
1
1
1

以下示例均返回1。$LISTVALID将以下所有“空”列表视为有效列表:

/// d ##class(PHA.TEST.Function).LISTVALID3()
ClassMethod LISTVALID3()
{
    WRITE $LISTVALID(""),!
    WRITE $LISTVALID($LB()),!
    WRITE $LISTVALID($LB(UndefinedVar)),!
    WRITE $LISTVALID($LB("")),!
    WRITE $LISTVALID($LB($CHAR(0))),!
    WRITE $LISTVALID($LB(,))
}

DHC-APP>d ##class(PHA.TEST.Function).LISTVALID3()
1
1
1
1
1
1

相关文章

网友评论

      本文标题:第三十七章 Caché 函数大全 $LISTVALID 函数

      本文链接:https://www.haomeiwen.com/subject/llukuktx.html