尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

c sharp基础

c sharp基础
📅 发布时间:2026/7/8 2:45:00

数据类型

无符号变量:byte、ushort、uint、ulong
有符号变量:sbyte、shor、int、long
浮点数:float、double、decimal
特殊类型:bool、char、string

枚举

概念

枚举是整形常量的集合。
枚举名:以 E 或者 E_ 开头,作为命名规范

enum E_Numbers{ number1 = 3,//默认值为3 number2,//默认值为4 number3;//默认值为5,递增 }
申明枚举
  1. namespace语句块中(常用)
  2. class语句块中、struct语句块中
  3. 枚举不能再函数语句块中申明
使用枚举
E_Numbers Number = E_Numbers.number1; //结合switch switch(Number){ case E_Numbers.number1: break; case E_Numbers.number2: break; case E_Numbers.number3: break; }
枚举的类型转换
  1. 枚举和int转换int i = (int)Number;int 转枚举Number = 3
  2. 枚举和string相互转换string str = Number.ToString();传的是number1 string转换成枚举Number = (E_Number)Enum.Parse(typeof(E_Number), "Other");把原本的number1转化成Other
枚举的作用

在游戏开发中,对象有很多的时候,会有许多的状态。
比如玩家,有一个动作状态,我们需要用一个变量或标识,来表示当前玩家处于哪种状态。
综合考虑可能会用int来表示状态。
1 行走 2 待机 3 跑步 4 跳跃

数组

一维数组

int[] arr1; int[] arr2 = new int[5]; int[] arr3 = new int[5]{1,2,3,4,5}; int[] arr4 = new int[]{1,2,3,4,5,6}; int[] arr5 = {1,2,3,4,5};

数组长度:array.Length
数组元素:array[0]

二维数组

int[,] arr1; int[,] arr2 = new int[3,3]; int[,] arr3 = new int[3,3]{ {1,2,3}, {4,5,6}, {7,8,9}}

数组长度:行:array.GetLength(0);列:array.GetLength(1)
数组元素:array[0,1]

交错数组

int[][] arr1; int[][] arr2 = new int[3][]; int[][] arr3 = new int[3][]{new int[]{1,2,3}, new int[]{1,2,3}, new int[]{1,2,3}};

数组长度:行:array.GetLength(0);某一行的列:array[0].Length
数组元素:array[0][1]

值类型和引用类型

引用类型:string、数组、类
值类型:其他、结构体
数组:int arr2[] = arr1,当改变arr2时,arr1改变
string:string str2 = str1,当改变str2时,str1不变

函数

函数创建

  1. class语句块中
  2. struct语句块中

ref和out

可以在函数内部改变外部传入的内容

Ref

ref传入的变量必须初始化,out不用。

static void ChangeValueRef(ref int value){ //value = 3; } static void ChangeArrayRef(ref int[] arr){ arr = new int[] {10,20,30}; } //调用 static void Main(string[] args){ int a = 1; int[] arr1 = {1,2,3}; ChangeValueRef(ref a); ChangeArrayRef(ref arr1); }
Out

out传入的变量必须在内部赋值,ref不用

static void ChangeValueOut(out int value){ value = 3; } static void ChangeArrayOut(out int[] arr){ arr = new int[] {10,20,30}; } //调用 static void Main(string[] args){ int a; int[] arr1; ChangeValueOut(out a); ChangeArrayOut(out arr1); }

变长参数和参数默认值

变长参数 params

params int[]意味着可以传入n个int参数,n可以等于0,传入的参数会存在arr数组中。

static int Sum (params int[] arr) { int sum = 0; for(int i = 0; i < arr.Length; i++){ sum += arr[i]; } return sum; }

注意:

  1. params关键字后面必为数组。
  2. 数组的类型可以是任意类型。
  3. 函数参数可以有别的参数和params关键字修饰的参数。
  4. 函数参数中只能最多出现一个params关键字,并且一定是在最后一组参数,前面可以有n个其他参数。
参数默认值

有参数默认值的参数一般称为可选参数
作用是 当调用函数时可以不传入参数,不传就会使用默认值作为参数的值。
static void Speak(string str = "我是默认值"){}注意:

  1. 支持多参数默认值,每个参数都可以有默认值。
  2. 如果要混用可选参数,必须写在普通参数后面。

函数重载

同一个函数名不同参数

结构体

与类的区别:C sharp 核心 > 结构体和类的区别

概念

用来表现存在关系的数据集合,比如用结构体表现学生 动物 人类等

一般写在namespace语句块中

结构体关键字struct

struct 自定义结构体名{ //变量 //构造函数 //函数 }
struct Student{ //结构体申明的变量不能够直接的进行初始化 //变量类型 可以写任意类型 包括结构体 但是不能时自己的结构体 //Student s; 报错,不能时自己的结构体 S s; //在结构体方法中,目前不需要加static关键字 void Speak(){ //函数中可以直接使用结构体内部申明的变量 Console.WriteLine(s); } }

访问修饰符

public (外部使用)
private(默认不写为private)

结构体的函数构造(构造函数)

  1. 没有返回值
  2. 函数名必须和结构体名相同
  3. 必须有参数
  4. 如果申明了构造函数,那么必须在其中对所有变量数据初始化
  5. 不允许自己申明无参构造函数

相关新闻

  • AI漫剧分镜提示词之赛博朋克漫剧
  • 【LLM】qwen3.5-9b
  • 2026WAIC展品地图:大模型、国产算力、人形机器人……8 大类全在这

最新新闻

  • 郴州家庭聚餐实测测评|科学选店避坑指南
  • 2026 如何选b站视频提取工具?免费方案每年省150元工具费
  • WristCompass:仅用腕部IMU实现无感全身朝向估计
  • el-table的树形表格全选 半选 取消全选问题解决
  • Hermes 上手指南:用一次故障复盘讲清取舍
  • 计算机毕业设计之基于Visualstudio在线超市管理系统

日新闻

  • PROPKA 3深度解析:蛋白质pKa预测的实战指南与算法原理
  • 微信小程序 globalData 监听:基于 Object.defineProperty 的 3 种实现方案对比
  • MySQL 8.0 数据清洗实战:3类异常值识别与 UPDATE/DELETE 批量处理

周新闻

  • 基于YOLOv12的番茄成熟度智能检测系统开发
  • 终极RimWorld模组管理指南:用RimSort告别模组冲突烦恼
  • AI Agent框架开发:从理论到实践的完整指南

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号