Plezuro/列表
外观
< Plezuro
Plezuro 中重要的类型之一是列表。它等同于 .NET List<object> 和 Java ArrayList<Object>。要创建列表,只需使用方括号 ('[', ']')。在中间代码中,它被翻译成 '::array()'。列表的元素可以是任何类型(包括列表),它们是通过引用传递的,因此列表可以包含自身。
$x = [1,2,3,'something',[3,4]];
'x'.dumpl;
x.each({
args.printl
});
x.each({
this.printl
});
正如您在上面看到的,您可以通过多种方式打印列表的元素。最简单的方法是使用 dumpl 函数(它适用于 Plezuro 中的任何类型)。另一种方法是使用 each 方法。'args' 表示传递给函数的所有参数(在本例中为元组 (value, index)),而 'this' 表示参数 #0(在本例中仅为值)。
现在,我想您想知道如何访问列表中指定元素(获取和设置其值)。这很简单,就像在其他语言中一样,使用方括号。
$list = [3,9,4];
'list'.dumpl;
list[0].printl;
list[1] = 'abc';
'list'.dumpl;
});
列表和其他变量一样,是通过引用传递的。
$a = [0,0,1];
$b = a;
b[0] = 90;
a
现在,如何对列表进行排序呢?
$x = [4,5,2,90,452,1,-34,20];
x.sort.printl; //sorting just by value
x.orderBy{args%10}.printl; //sorting by last digit (for negative numbers we assume the last digit is negative)
现在,再谈谈索引。您可以像在 Ruby 中一样访问列表的一部分(使用 '..' 操作符)。例如 a[1..4]。不同之处在于,在 Ruby 中,它返回从索引 1 到索引 4 的元素,但在 Plezuro 中,它返回从索引 1 到索引 3 的元素。另一个有趣的特性是,当使用逗号时,您可以访问列表的不相交部分(例如第一个和第四个元素)。索引可能会返回一个空对象、一个单个变量或一个元组。当然,您可以修改列表的全部部分。