Files
oraset/examples/test_array_comprehensive.oraset
T
2026-04-24 21:54:58 +08:00

68 lines
1.6 KiB
Plaintext

!! 全面测试数组功能
!! 基本数组操作
show(`=== 基本数组操作 ===`);
!! 创建数组
fruits = arr(`apple`, `banana`, `cherry`);
show(`创建数组: `, fruits);
show(`数组长度: `, len(fruits));
!! 数组索引访问
show(`第一个元素: `, fruits[0]);
show(`第二个元素: `, fruits[1]);
show(`第三个元素: `, fruits[2]);
!! 数组修改
fruits = push(fruits, `date`);
show(`添加元素后: `, fruits);
fruits = pop(fruits);
show(`删除元素后: `, fruits);
!! 数组搜索
show(`banana的索引: `, indexOf(fruits, `banana`));
show(`orange的索引: `, indexOf(fruits, `orange`));
!! 高级数组操作
show(`\n=== 高级数组操作 ===`);
!! 数组反转
reversed_fruits = reverse(fruits);
show(`反转数组: `, reversed_fruits);
!! 数组合并
show(`数组合并成字符串: `, join(fruits, `, `));
!! 数组排序
numbers = arr(`3`, `1`, `4`, `1`, `5`, `9`, `2`);
show(`原数字数组: `, numbers);
sorted_numbers = sort(numbers);
show(`排序后: `, sorted_numbers);
!! 数组切片
show(`切片 [0:2]: `, slice(fruits, `0`, `2`));
show(`切片 [1:3]: `, slice(fruits, `1`, `3`));
!! 数组嵌套
show(`\n=== 数组嵌套 ===`);
nested = arr(`a`, arr(`b`, `c`), `d`);
show(`嵌套数组: `, nested);
show(`嵌套数组长度: `, len(nested));
!! 数组与数学运算
show(`\n=== 数组与数学运算 ===`);
nums = arr(`10`, `20`, `30`);
show(`原数组: `, nums);
show(`第一个元素的平方根: `, math.sqrt(nums[0]));
show(`第二个元素的平方: `, math.pow(nums[1], `2`));
!! 数组遍历模拟
show(`\n=== 数组遍历模拟 ===`);
i = 0;
while (i < len(fruits)) {
show(`元素 `, i, `: `, fruits[i]);
i = i + 1;
}