C# 语言类型(三)—数组/枚举类型/结构体

总目录
C# 语法总目录

参考链接:
C#语法系列:C# 语言类型(一)—预定义类型值之数值类型
C#语法系列:C# 语言类型(二)—预定义类型之字符串及字符类型简述
C#语法系列:C# 语言类型(三)—数组/枚举类型/结构体
C#语法系列:C# 语言类型(四)—传递参数及其修饰符
C#语法系列:C# 语言类型(五)—其他

C# 语言类型 三—数组/枚举类型/结构体

      • 一、数组
        • 1. 数组创建
        • 2. 多维数组
          • 2.1 矩形数组
          • 2.2 锯齿形数组
      • 二、枚举类型和结构体
        • 1. 枚举类型使用
        • 2. 结构体的使用

一、数组

1. 数组创建
//第一种 数组的初始化方式
//int[] scores = {23,43,432,42,34,234,234,2,34} ;//使用这种方式赋值的时候,一定要注意 在数组声明的时候赋值//第二种数组创建的方式
//int[] scores = new int[10];
//int[] scores;
//scores = new int[10];//int[] scores = new int[10]{3,43,43,242,342,4,234,34,234,5};
//Console.WriteLine(scores[10]);//当我们访问一个索引不存在的值的时候,会出现异常exception//char[] charArray = new char[2]{'a','b'};
//Console.WriteLine(charArray[1]);string[] names = new string[]{"taikr","baidu","google","apple"};
Console.WriteLine(names[0]);
Console.ReadKey();
2. 多维数组

多维数组分为锯齿形数组矩形数组

2.1 矩形数组
//矩形数组
//1.
int[,] retrict = new int[3, 3]
{{1,2,3},{2,3,4},{2,3,4}
};//2.
int[,] rer =
{{1,2,6},{2,3,4},{2,3,4}
};
2.2 锯齿形数组
//锯齿形数组
//1.
int[][] res = new int[3][];
res[0] = new int[] { 4, 5 };
res[1] = new int[] { 4, 5 };
res[2] = new int[] { 4, 5 };//2.
int[][] tes = new int[][]
{new int[]{4,5},new int[]{1},new int[]{7,8,9}
};//3.
int[][] ret =
{new int[] { 4, 5 },new int[] { 4, 5 },
};

二、枚举类型和结构体

1. 枚举类型使用
namespace _037_枚举类型 {//枚举类型的定义enum GameState:byte//修改该枚举类型的存储类型,默认为int{Pause = 100, // 默认代表的是整数0Failed = 101,// 默认代表的是整数1Success=102,// 默认代表的是整数2Start=200// 默认代表的是整数3}class Program{static void Main(string[] args) {利用定义好的枚举类型 去声明变量//GameState state = GameState.Start;//if (state == GameState.Start)//枚举类型比较//{//    Console.WriteLine("当前处于游戏开始状态");//}//Console.WriteLine(state);//int state =3;//if (state == 3)//{//    Console.WriteLine("当前处于游戏开始界面");//}GameState state = GameState.Start;int num = (int)state;Console.WriteLine(num);Console.ReadKey();}}
}
2. 结构体的使用
namespace _038_结构体 {//我们可以把结构体当成,几个类型组成了一个新的类型//比如下面的这个就是使用了3个float类型的变量,来表示一个坐标类型struct Position{public float x;public float y;public float z;}enum Direction{West,North,East,South}struct Path{public float distance;public Direction dir;}class Program {static void Main(string[] args){//通过三个float类型的变量来表示一个敌人的坐标//float enemy1X = 34;//float enemy1Y = 1;//float enemy1Z = 34;//float enemy2X = 34;//float enemy2Y = 1;//float enemy2Z = 34;//当使用结构体声明变量的时候,相当于使用结构体中所有的变量去声明//Position enemy1Position;//enemy1Position.x = 34;//可以通过.加上属性名来访问结构体中指定的变量使用结构体让程序变得更清晰//Position enemy2Position;Path path1;path1.dir = Direction.East;path1.distance = 1000;}}
}

总目录
C# 语法总目录

参考链接:
C#语法系列:C# 语言类型(一)—预定义类型值之数值类型
C#语法系列:C# 语言类型(二)—预定义类型之字符串及字符类型简述
C#语法系列:C# 语言类型(三)—数组/枚举类型/结构体
C#语法系列:C# 语言类型(四)—传递参数及其修饰符
C#语法系列:C# 语言类型(五)—其他

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/21419.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

比较两台计算机上的LabVIEW、工具包及驱动程序的一致性

比较两台计算机上的LabVIEW、工具包及驱动程序是否相同,可以通过以下步骤实现: 1. 检查LabVIEW版本 方法一:在LabVIEW中查看版本信息 步骤: 打开LabVIEW。点击菜单栏的 Help > About LabVIEW。记录显示的LabVIEW版本号和许可…

汽车数据应用构想(二)

一直说数据价值场景,啥叫有价值?啥样的场景有价值?按互联网的价值观来看,用户的高频需求就是价值。用户也许不会付费,但只要他天天用,那就是流量,就是用户黏性,就是价值!…

力扣1 两数之和

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 你可以按任意顺序返回…

阿贝云:免费虚拟主机和免费云服务器评测

阿贝云是一家知名的云服务提供商,提供免费虚拟主机和免费云服务器等服务。在今天的评测中,我们将对阿贝云的免费虚拟主机和免费云服务器进行详细的试用和评测。 首先,让我们来看看阿贝云的免费虚拟主机服务。阿贝云的免费虚拟主机提供稳定可靠…

方法重写

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 基类的成员都会被派生类继承,当基类中的某个方法不完全适用于派生类时,就需要在派生类中重写父类的这个方法,这和…

HALCON飞拍贴片机框架程序——硬件介绍

本专栏主要讲解三头贴片机框架程序,包括硬件介绍和软件代码。硬件主要为视觉部分,软件为视觉检测代码部分。贴片机的机械硬件不做介绍。 具体设备运行视频可以搜索博主抖Y:“伶俐科技”观看。 贴片机硬件如下图分为三个部分,第一…

Go 语言中的日期与时间

在文章中,我们将深入探讨 Go 语言中日期和时间的处理。Go 提供了丰富的内置支持,通过 time 包,可以方便地进行时间的表示、格式化、计算以及比较。 文章目录 1、Go 语言中的日期时间介包介绍2、Go 语言中的日期时间介包的使用2.1、导入时间包…

网络安全等级保护,三级等保技术建议书(word原件获取)

1信息系统详细设计方案 1.1安全建设需求分析 1.1.1网络结构安全 1.1.2边界安全风险与需求分析 1.1.3运维风险需求分析 1.1.4关键服务器管理风险分析 1.1.5关键服务器用户操作管理风险分析 1.1.6数据库敏感数据运维风险分析 1.1.7“人机”运维操作行为风险综合分析 1.2…

Java数据结构与算法(有向图)

前言 有向图(Directed Graph)是一种由顶点和有方向的边组成的图数据结构。 实现原理 使用邻接表表示法实现有向图相对简单明了,步骤也相对简单。 1:首先创建有向图 2.创建顶点 3.顶点间创建边 具体代码实现 package test13;import ja…

Android bw_costly_<iface>链

测试时关注到bw_costly_链 因为和iface有关。猜测这个链是动态生成的。 开关数据业务测试,果然关闭数据业务后,bw_OUTPUT中不再会调用bw_costly_rmnet_data3,也没有bw_costly_rmnet_data3这个链了。 再次打开数据业务后出现了bw_costly_rmnet…

llvm 3.5 源码分析 clang for x86 002 之鸟瞰编译流程

0. 目标 debug的方式挖掘 clang 编译c文件的概述过程 1,示例源文件 summm.c int addd(int a, int b) {return ab; } 2,编译过程 $ clang -fPIE summm.c -c -o summm.o DEBUG: gdb clang set args -fPIE summm.c -c -o summm.…

【C语言】字符串逆序

(来源:牛客网) 题目: 将一个字符串str的内容颠倒过来,并输出。 数据范围:1≤len(str)≤10000 输入描述: 输入一个字符串,可以有空格 输出描述: 输出逆序的字符串 示例1 输入 I am a student 输出 tneduts…

Python 数仓建模

在Python中进行数据仓库(Data Warehouse, 通常简称为数仓)建模通常涉及到多个步骤,包括数据抽取(Extract)、转换(Transform)、加载(Load,即ETL过程)&#xff…

详解 Spark核心编程之广播变量

广播变量是分布式共享只读变量 一、广播变量功能 ​ 广播变量用来将一个较大的数据对象发送到 Executor 并保存在内存中,同一个 Executor 中的所有 Task 都可以读取且只能读取广播变量中的数据,从而达到共享的目的,避免 Executor 中存在大量…

大语言模型技术系列讲解:大模型应用了哪些技术

为了弄懂大语言模型原理和技术细节,笔者计划展开系列学习,并将所学内容从简单到复杂的过程给大家做分享,希望能够体系化的认识大模型技术的内涵。本篇文章作为第一讲,先列出大模型使用到了哪些技术,目的在于对大模型使…

基于51单片机数控直流数控电源的设计

电源技术尤其是数控电源技术是一门实践性很强的工程技术,服务于各行各业。当今电源技术融合了电气、电子、系统集成、控制理论、材料等诸多学科领域。直流稳压电源是电子技术常用的仪器设备之一,广泛的应用于教学、科研等领域,是电子实验员、电子设计人员及电路开发部门进行…

“华为杯”第十三届中国研究生 数学建模竞赛-E题:粮食最低收购价政策问题研究(续)

目录 4.3 问题三:粮食价格的特殊规律性模型 4.3.1 分析和建模 4.3.2 求解和结果

kotlin1.8.10问题导致gson报错TypeToken type argument must not contain a type variable

书接上回,https://blog.csdn.net/jzlhll123/article/details/139302991。 之前我发现gson报错后: gson在2.11.0给我的kotlin项目代码报错了。 IllegalArgumentException: TypeToken type argument must not contain a type variable 上次解释原因是因为&…

String常用操作

String常用方法 构造字符串 常用的构造字符串有3种: 1.直接赋值String s "abcd"; 2.实例化调用构造方法String s new String("abcd"); 3.实例化传字符数组 char[] ch {a,b,c,d}; String s new String(ch);字符串比较 比较 比较的是两个…

HCIA-HarmonyOS Application Developer 课程大纲

一:鸿蒙 Mac 版、 Windows 版【编辑器】和【模拟器】 & 鸿蒙基础环境搭建 - ( 3 课时) - Mac arm 版开发环境搭建:Mac arm 版模拟器安装及配置;安装 DevEcoStudioPreview 版本; - Windows 版开发…