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

【Unityc#专题篇】之c#基础篇

在这里插入图片描述


👨‍💻个人主页:@元宇宙-秩沅

👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!

👨‍💻 本文由 秩沅 原创

👨‍💻 收录于专栏unity之c#专题篇


🅰️Unity之c#专题篇——【基础章】


文章目录

    • 🅰️Unity之c#专题篇——【基础章】
    • 🎶前言
    • 🎶(==刹==)函数
    • 🎶(==金==)异常捕获
    • 🎶(==木==)get;set;和构造函数
    • 🎶(==水==)复杂数据结构
    • 🎶(==火==)枚举
    • 🎶(==土==)数组
    • 🎶(==坤==)结构体
    • 🎶(==雷==)ref,out ,params
    • 🎶(==风==)值类型,引用类型和特殊类型
    • **特殊类型——string**
    • 🎶(==乾==)重载
    • 🎶(==电==)递归
    • 🎶(==电==)冒泡排序
    • 🎶(==水==)选择排序
    • ⭐相关文章⭐


🎶前言


🅰️ 进阶之路


🎶(函数


  • 函数的三大作用
    在这里插入图片描述

🎶(异常捕获


  • 作用:不用写其他的判断错误,优化了代码
    在这里插入图片描述

🎶(get;set;和构造函数


public int Result {get ;set ;}

  • 没有括号()
  • 获取和设置
  • 不能像方法一样使用,有返回值
  • 它和readOnly(只读修饰符)的关系——一样的保险性

构造函数

  • 用于对多个变量进行赋值。降低了程序的复杂性,和代码的使用量
  • 构造函数最大的作用就是初始化和一键赋值

🎶(复杂数据结构


在这里插入图片描述


🎶(枚举


  • 枚举是一个被命名整形常量的集合
  • 枚举的语法命名规则——以E或_E 再+ 自定义名
  • 声明枚举和声明枚举变量的区别**(前者是对自定义枚举的类型进行声明,后者是对声明以后的枚举变量进行声明)**
  • 在哪里声明枚举
    在这里插入图片描述
  • 默认语句 和 赋值
    在这里插入图片描述在这里插入图片描述
  • 枚举和switch的关系 枚举变量的声明和使用
    在这里插入图片描述
  • 枚举和字符串的相互转换——为什么要转换
    在这里插入图片描述

适用于输出它对应的数值和对应的变量名

  • 枚举的应用游戏开发中枚举用来表示人物状态 或者 在QQ中也可以用来表示状态 如在线,离开等等

🎶(数组


数组的声明
在这里插入图片描述

  • 数组声明的方式
  • 二维数组的定义格式
  • 二维数组的长度
  • 不规则数组和二维数组的区别
  • 不规则数组的长度获取和某行的长度获取
    在这里插入图片描述

🎶(结构体


  • 概念:自定义类型变量的集合
  • 作用:将有同一关系的变量集合一块
  • 结构:
    在这里插入图片描述
  • 细节:
    1.结构体变量不能初始化
    2.结构体不能放自身类型的结构体
    3.结构体中自身默认的修饰符为internal,其成员的修饰符为 private
    4.结构体中的构造函数的特点:
    在这里插入图片描述

🎶(ref,out ,params


  • ref
    实参需要初始化赋值
  • out
    实参不需要初始化赋值(初始化不初始化都可以)
    在这里插入图片描述
  • params(变长参数)

作用

以伪数组的形式给多个相同类型的形参进行传递
减少了代码的复杂度

在这里插入图片描述


🎶(值类型,引用类型和特殊类型


在这里插入图片描述

特殊类型——string

在这里插入图片描述
+
拷贝地址,但是不会变值(原因:b在栈中开辟了新地址但是他们不会像一般的引用类型那样公用一个地址而是另外开辟)
在这里插入图片描述

  • 缺点:如果频繁改变string变量的值的话(多次赋值),会造成存储量的累加(内存垃圾)
  • 优化方案:?见后续
  • 通过断点调试查看内存和数据调用: F9


🎶(重载


在这里插入图片描述


🎶(递归


  • 特点
    1.自己调用自己
    2.一个正确的递归
    在这里插入图片描述

🎶(冒泡排序


 int[] a = { 9,8,7,6,4,5,3,2,1};
            for(int i = 0;i < a.Length;i++)
            {
                for(int  j = i+1; j<a.Length;j++)
                {
                    if(a[i] > a[j])
                    {
                        int temp = a[i];
                        a[i] = a[j];
                        a[j] = temp;
                    }
                }
            }

🎶(选择排序


 for(int i = 0; i <a.Length;i++)
            {
                min = i;
                for( int j = i+1; j <a.Length;j++)
                {
                    if( a[min] > a[j] )
                    {
                        min = j;
                        temp = a[i];
                        a[i] = a[min];
                        a[min] = temp;

                    }
                }

⭐相关文章⭐

⭐【2023unity游戏制作-mango的冒险】-4.场景二的镜头和法球特效跟随

⭐【2023unity游戏制作-mango的冒险】-3.基础动作和动画API实现

⭐【2023unity游戏制作-mango的冒险】-2.始画面API制作

⭐【2023unity游戏制作-mango的冒险】-1.场景搭建

⭐“狂飙”游戏制作—游戏分类图鉴(网易游学)

⭐本站最全-unity常用API大全(万字详解),不信你不收藏



你们的点赞👍 收藏⭐ 留言📝 关注✅是我持续创作,输出优质内容的最大动力!


http://www.kler.cn/a/2830.html

相关文章:

  • Debezium日常分享系列之:异步 Debezium 嵌入式引擎
  • C# 集合与泛型
  • 重学SpringBoot3-整合 Elasticsearch 8.x (三)使用Repository
  • 009_SSH_Mysql图书管理系统(学生注册 借书 还书 绵阳)——lwplus87(免费送)
  • Linux中线程的基本概念与线程控制
  • 为什么在Ubuntu下使用VScode开发C++程序时需要手动配置链接库
  • ASO优化之应用商店中的A/B测试——改良版
  • 菜鸟刷题Day5
  • FPGA打砖块游戏设计(有上板照片)VHDL
  • React 入门(超详细)
  • 从零开始搭建游戏服务器 第一节 创建一个简单的服务器架构
  • 基于springboot框架实现校园博客系统【源码+论文】展示
  • python 使用for循环删除列表元素
  • 怎么防止SQL注入?
  • HTML5 Canvas
  • Afterlogic Aurora Corporate Crack
  • 验证码——vue中后端返回的图片流如何显示
  • python例程:五子棋(控制台版)程序
  • PTP同步方式简单介绍 Master和Slave功能
  • Linux命令运行原理shell和bash
  • 二、Trino406系列 之 集群部署
  • AJAX,Axios,JSON简单了解
  • 看齐iOS砍掉祖传功能,Android 16G内存也危险了
  • HFish蜜罐的介绍和简单测试(一)
  • shell简单使用介绍
  • KafKa知识汇总