zoukankan      html  css  js  c++  java
  • TCL数组

    数组是一组使用索引对应元素的排列方式。常规数组的语法如下所示。

    set ArrayName(Index) value

    用于创建简单数组的例子,如下所示。

    #!/usr/bin/tclsh
    
    set languages(0) Tcl
    set languages(1) "C Language"
    puts $languages(0)
    puts $languages(1)

    当上述代码被执行时,它会产生以下结果。

    Tcl
    C Language

    数组大小

    用于计算数组大小的语法,如下所示。

    [array size variablename]

    用于打印数组的大小的示例如下所示。

    #!/usr/bin/tclsh
    
    set languages(0) Tcl
    set languages(1) "C Language"
    puts  [array size languages]

    当上述代码被执行时,它会产生以下结果。

    2

    数组迭代

    虽然数组索引可以是非连续的,像索引1,然后索引10等指定的值。但是如果它们是连续的,我们可以用数组迭代访问数组的元素。一个简单的数组迭代的打印元素,如下所示。

    #!/usr/bin/tclsh
    
    set languages(0) Tcl
    set languages(1) "C Language"
    for { set index 0 }  { $index < [array size languages] }  { incr index } {
          puts "languages($index) : $languages($index)"
    }

    当上述代码被执行时,它会产生以下结果。

    languages(0) : Tcl
    languages(1) : C Language

    关联数组

    在TCL,所有数组本质是相关联的。数组存储并没有任何具体的顺序进行检索。关联数组使用索引但不一定都是数字。一个简单的例子,关联数组与非数字索引如下所示。

    #!/usr/bin/tclsh
    
    set personA(Name) "Dave"
    set personA(Age) 14
    puts  $personA(Name)
    puts  $personA(Age)

    当上述代码被执行时,它会产生以下结果。

    Dave
    14

    数组的索引

    用于检索数组索引的语法如下所示。

    [array names variablename]

    用于打印数组的大小的示例如下所示。

    #!/usr/bin/tclsh
    
    set personA(Name) "Dave"
    set personA(Age) 14
    puts [array names personA]

    当上述代码被执行时,它会产生以下结果。

    Age Name

    关联数组迭代

    可以使用数组的索引来遍历数组。如下例子所示。

    #!/usr/bin/tclsh
    
    set personA(Name) "Dave"
    set personA(Age) 14
    foreach index [array names personA] {
       puts "personA($index): $personA($index)"
    }

    当上述代码被执行时,它会产生以下结果。

    personA(Age): 14
    personA(Name): Dave
  • 相关阅读:
    在AE中通过SDE添加图层(转)
    上一视图下一视图功能实现(C#+SuperMap Objects)
    [Python入门及进阶笔记]Python基础内置函数小结
    Javascript小球
    64位centos下安装python的PIL模块
    [Python入门及进阶笔记]Python基础集合小结
    C语言的那些小秘密之【链表(二)】
    巴斯卡三角形
    [Python入门及进阶笔记]Python基础数字处理相关模块
    C语言的那些小秘密之【链表(一)】
  • 原文地址:https://www.cnblogs.com/zihanxing/p/6852773.html
Copyright © 2011-2022 走看看