当前位置: 首页 > news >正文

C#基础学习(四)笑谈C#函数:从“Hello World”到“千变万化”的奇幻之旅

        书接上回,咱们上篇文章介绍了值类型和引用类型的区别,今天咱就来学习学习C#中的函数是个啥。

        

        前言:当代码学会“复制粘贴”,悲剧就开始了...

各位少侠,你是否经历过这样的绝望时刻?
👨💻 场景一:同样的"Console.WriteLine"写了10遍,突然发现要把"你好"改成"HELLO"
👩💻 场景二:用12种姿势算完1+1后,发现老板要求再算100个数的和...

这时候你需要施展C#函数的魔法了!让代码学会"分身术"和"瞬移术",开启高效编程模式~

第一章:初识函数——代码界的"瑞士军刀" 

1.1 数学老师看了会沉默的函数真相

你以为函数还是数学课上那些f(x)=x²+2x+1?Too young!
C#中的函数是:​自带名字的代码快递员📦,只需要喊一声名字,就能让TA帮你送货(执行代码)!

三位核心技能:

  1. 封装代码:把零散的代码打包成盲盒(别担心,里面没有泡泡玛特)
  2. 重复使用:召唤术!一个咒语无限复用
  3. 抽象行为:把代码变成黑科技,其他人只管用,不用问原理

第二章:函数的“出生证明”——解剖语法结构 

2.1 超详细函数说明书

static 返回类型 函数名(参数类型 参数名1, 参数类型 参数名2...)
{
    // 你的代码魔法
    return 返回值; // 不想回家(返回)?可以用void当护身符
}

 五大秘诀:

  1. static现阶段是必修课(听说学了面向对象就能申请免修?)
  2. 返回类型像菜单——上到鱼香肉丝下到佛跳墙任君选择
  3. 函数名请用帕斯卡命名法​(例如:SayHello而不是sayHello
  4. 参数列表是VIP等候区——有请客座讲师"古天乐"先生!
  5. return是任意门——说走就走,不解释!

第三章:函数的百变造型秀(各种类型的函数)

3.1 哑剧演员:无参无返回

 

static void SayHello()
{
    Console.WriteLine("程序员有三好:");
    Console.WriteLine("Debug、改需求、头发少");
}

3.2 单口相声:有参无返回

static void Sing(string songName)
{
    Console.WriteLine($"正在播放:《{songName}》");
    Console.WriteLine("你是我天边最美的云彩~♪");
    Console.WriteLine("(系统:检测到致命走调,已静音)");
}

 3.3 神秘魔法师:无参有返回

static string GetProgrammerSecret()
{
    return "世界上最遥远的距离,是代码在我面前却无法运行";
}

3.4 全能超人:有参有返回

static int CalculateAge(int birthYear)
{
    return DateTime.Now.Year - birthYear;
    // 警告:此函数可能导致程序员焦虑症发作
}

第四章:Return的暗黑艺术——消失的代码 

        你以为return只会乖乖送回数据?太天真了!
return还能扮演"代码终结者"——立刻结束函数,留下未完成的代码在风中凌乱...

static void GiveUp()
{
    Console.WriteLine("我要开始写项目了!");
    return; // 逃跑的姿势要帅
    Console.WriteLine("(这条消息永远不会被看到)");
}

第五章:函数实战——客官,您的满汉全席来了! 

吃货专属教程:掌握参数与返回值的极限操作

案例:设计绝世烤串函数
需求:传入肉串数量和辣度,返回烤串状态和烧烤时长

static (string, int) BBQ(int meatCount, string spicyLevel)
{
    int time = meatCount * 2;
    string status = $"正在制作{spicyLevel}辣度的{meatCount}串";
    return (status, time);
}

// 使用示例
var result = BBQ(5, "BT级别");
Console.WriteLine($"烤串状态:{result.Item1},预计等待时间:{result.Item2}分钟");

终章:成为函数魔法学院的优等生 🎓

记住函数三定律:

  1. 能封装的都是好代码(哪怕只是打印Hello World)
  2. 重复使用是对函数最大的尊重(不然为什么不让你复制粘贴)
  3. 取个好名字比找对象还重要(CalculateAge永远比ABC讨喜)

最后送大家一句魔法咒语:
​“代码的终极奥义,在函数之外,又在参数之中。”​
                        ——某个不愿透露姓名的程序诗人

        课后彩蛋:试着写个函数计算自己的发际线后移速度,参数提供工作年限——但不保证计算结果能让你笑着活下去~#(注意安全)

        好了今天的知识很短,但很重要,请敬请期待我的下一篇文章关于函数传参你不得不知道的只是(ref和out)

相关文章:

  • 用Deepseek + Kimi 快速生成高质量的ppt
  • C Sharp上位机需要掌握哪些知识?
  • AI赋能:科技写作的革新之路
  • pandas中基于范围条件进行表连接
  • LVS NAT模式实现三台RS的轮询访问
  • 计算机二级web易错点(7)-选择题
  • CityEngine:3D城市建模专家
  • 【日语学习】助词で的七作用
  • 解决 Element UI 嵌套弹窗的状态管理问题!!!
  • 航天军工与金融行业 UE/UI 设计:跨越领域的体验革新之道
  • OFD转PDF:解决数字化文档兼容性的最佳途径
  • ActiveMQ 面试备战指南
  • 【QT】QTCreator测试程序
  • CSS 中 letter-spacing 不支持百分比
  • UniApp 表单校验两种方式对比:命令式与声明式
  • Perl语言的计算机网络
  • 【后端开发面试题】每日 3 题(二十)
  • 【CSS】CSS 使用全教程
  • 【学习记录】大模型微调之使用 LLaMA-Factory 微调 Qwen系列大模型,可以用自己的数据训练
  • [01-03-03].第15节:面向对象 - 三大特征
  • 上海百年龙华码头开启新航线,弥补浦江游览南段空缺
  • 央媒:设施老化、应急预案套模板,养老机构消防隐患亟待排查
  • 打造信息消费新场景、新体验,上海信息消费节开幕
  • 全国游泳冠军赛:孙杨、潘展乐同进400自决赛,今晚将正面对决
  • 特朗普指控FBI前局长“暗示刺杀总统”,“8647”藏着什么玄机?
  • 新华时评:让医德医风建设为健康中国护航