LogoArcartX Doc
Shimmer语法教学进阶篇

声明函数

学习Shimmer中的函数定义和使用方法

希望是万恶之首,它不断延长着人们的痛苦

函数是一段可以重复使用的代码块。通过函数,我们可以将代码组织得更加整洁,提高代码的复用性。

函数的基础知识

📝

函数定义

// 基本函数定义
var.打招呼 = -> {
    Shimmer.println("你好!")
}
 
 
// 带返回值的函数
var.求和 = -> {
    args[0] + args[1]  // 最后一行表达式的值会被自动返回 也可主动return
}
 
// 显式返回
var.检查年龄 = -> {
    if(args[0] >= 18){
        return "成年人"
    }
    return "小孩儿"
}
📨

参数传递

var.打印参数 = -> {
    Shimmer.println("第一个参数: {args[0]}")
    Shimmer.println("第二个参数: {args[1]}")
}
var.打印参数("Hello", "World")
↩️

返回值

// 自动返回最后一行表达式的值
var.计算平方 = -> {
    args[0] * args[0]  // 返回平方值
}
 
// 条件返回
var.获取等级 = -> {
    if(args[0] >= 90) {
        return "A"
    } elif(args[0] >= 80) {
        return "B"
    } else {
        return "C"
    }
}
 
// 提前返回
var.检查数字 = -> {
    if(args[0] < 0) {
        return "负数"  // 提前返回
    }
    
    if(args[0] == 0) {
        return "零"
    }
    
    "正数"  // 最后的返回
}

函数使用示例

🧮

计算器函数

var.计算器 = -> {
    switch(args[2]){
        case "加法" {
            return args[0] + args[1]
        }
        case "减法" {
            return args[0] - args[1]
        }
        case "乘法" {
            return args[0] * args[1]
        }
        case "除法" {
            if(args[1] == 0) {
                return "除数不能为0"
            }
            return args[0] / args[1]
        }
        else {
            return "未知操作"
        }
    }
}
 
Shimmer.println(var.计算器(10, 5, "加法"))    // 15
Shimmer.println(var.计算器(10, 5, "减法"))    // 5

练习题

🛍️

练习1:购物折扣

编写一个函数,根据购物金额计算折扣:

  • 1000元以上打8折
  • 500-1000元打9折
  • 500元以下不打折
  • 要求使用提前返回的方式编写
📊

练习2:成绩处理

编写一组函数处理学生成绩:

  • 计算平均分
  • 找出最高分和最低分
  • 统计及格人数
  • 要求使用函数返回值传递数据

函数是代码复用和组织的重要工具。好的函数设计可以让代码更容易维护和理解。记住:一个函数最好只做一件事,并且要做好这件事。

On this page