C# 语言基础全面解析


.NET学习资料

.NET学习资料

.NET学习资料


一、引言

C# 是一种功能强大、面向对象且类型安全的编程语言,由微软开发,广泛应用于各种类型的软件开发,从桌面应用、Web 应用到游戏开发等领域。本文将全面介绍 C# 语言的基础知识,帮助你快速入门 C# 编程。

二、基本语法

2.1 程序结构

C# 程序通常由一个或多个类组成,每个类可以包含字段、属性、方法和事件等成员。程序的执行从 Main 方法开始,这是程序的入口点。以下是一个简单的 C# 程序结构示例:

using System;class Program
{static void Main(){Console.WriteLine("这是一个简单的 C# 程序");}
}

在上述代码中:

using System; 引入了 System 命名空间,该命名空间包含了许多常用的类型和功能,如 Console 类,用于控制台输入输出。

class Program 定义了一个名为 Program 的类,所有 C# 代码都需要放在类中。

static void Main() 是程序的入口方法,static 关键字表示该方法属于类本身,而不是类的实例。void 表示该方法没有返回值。

2.2 注释

注释是代码中用于解释说明的部分,不会被编译器执行。C# 支持三种类型的注释:
单行注释:以 // 开头,注释内容直到行末。例如:

// 这是一个单行注释

多行注释:以 /* 开始,以 */ 结束,可以跨越多行。例如:

/*
这是一个
多行注释
*/

文档注释:以 /// 开头,用于生成代码文档。例如:

/// <summary>
/// 这是一个用于计算两个数之和的方法
/// </summary>
/// <param name="a">第一个数</param>
/// <param name="b">第二个数</param>
/// <returns>两数之和</returns>
public static int Add(int a, int b)
{return a + b;
}

三、数据类型

3.1 基本数据类型

C# 提供了丰富的基本数据类型,可分为以下几类:

整数类型:包括 sbyte(8 位有符号整数)、byte(8 位无符号整数)、short(16 位有符号整数)、ushort(16 位无符号整数)、int(32 位有符号整数)、uint(32 位无符号整数)、long(64 位有符号整数)和 ulong(64 位无符号整数)。例如:

int number = 10;
long bigNumber = 1000000000000;

浮点类型:float(单精度浮点数)和 double(双精度浮点数),用于表示小数。例如:

float piApprox = 3.14f;
double morePrecisePi = 3.141592653589793;

字符类型:char 用于表示单个字符,使用单引号括起来。例如:

char letter = 'A';

布尔类型:bool 只有两个值 true 和 false,用于逻辑判断。例如:

bool isDone = true;

3.2 引用数据类型

引用数据类型存储对对象的引用,而不是对象本身。常见的引用数据类型包括:
:是一种自定义的数据类型,封装了数据和操作数据的方法。例如:

class Person
{public string Name { get; set; }public int Age { get; set; }
}

数组:用于存储多个相同类型的元素。例如:

int[] numbers = { 1, 2, 3, 4, 5 };
string[] names = new string[3] { "Alice", "Bob", "Charlie" };

字符串:string 用于表示文本,是字符的序列。字符串使用双引号括起来。例如:

string greeting = "Hello, World!";

四、变量和常量

4.1 变量

变量是用于存储数据的标识符,在使用前需要声明其类型。例如:

int age;
age = 25;string message = "Hello";

C# 也支持类型推断,使用 var 关键字,编译器会根据初始化值推断变量的类型。例如:

var number = 10; // 编译器推断 number 为 int 类型
var name = "John"; // 编译器推断 name 为 string 类型

4.2 常量

常量是在程序执行过程中值不能改变的量。使用 const 关键字声明常量。例如:

const double pi = 3.14159;
const string companyName = "ABC Company";

五、运算符

5.1 算术运算符

包括 +(加)、-(减)、*(乘)、/(除)和 %(取模)。例如:

int result1 = 5 + 3;
int result2 = 10 - 7;
int result3 = 4 * 6;
double result4 = 15.0 / 4.0;
int remainder = 17 % 5;

5.2 赋值运算符

= 用于将值赋给变量。此外,还有复合赋值运算符,如 +=、-=、*=、/= 等。例如:

int num = 10;
num += 5; // 等价于 num = num + 5;

5.3 比较运算符

包括 ==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)和 <=(小于等于),用于比较两个值,返回 bool 类型结果。例如:

bool isEqual = 5 == 5;
bool isGreater = 10 > 8;

5.4 逻辑运算符

&&(逻辑与)、||(逻辑或)和 !(逻辑非),用于处理布尔值。例如:

bool condition1 = true;
bool condition2 = false;
bool result5 = condition1 && condition2;
bool result6 = condition1 || condition2;
bool result7 =!condition1;

六、控制结构

6.1 if - else 语句

用于根据条件执行不同的代码块。例如:

int score = 85;
if (score >= 90)
{Console.WriteLine("优秀");
}
else if (score >= 80)
{Console.WriteLine("良好");
}
else
{Console.WriteLine("其他");
}

6.2 switch - case 语句

用于根据不同的值执行不同的代码块,适用于多分支判断。例如:

int dayOfWeek = 3;
switch (dayOfWeek)
{case 1:Console.WriteLine("星期一");break;case 2:Console.WriteLine("星期二");break;case 3:Console.WriteLine("星期三");break;default:Console.WriteLine("其他");break;
}

6.3 for 循环

用于重复执行一段代码指定的次数。例如:

for (int i = 0; i < 5; i++)
{Console.WriteLine(i);
}

6.4 while 循环

只要指定的条件为 true,就会重复执行代码块。例如:

int count = 0;
while (count < 3)
{Console.WriteLine(count);count++;
}

6.5 do - while 循环

与 while 循环类似,但它会先执行一次代码块,然后再检查条件。例如:

int value = 0;
do
{Console.WriteLine(value);value++;
} while (value < 3);

七、方法

方法是包含一系列语句的代码块,用于执行特定的任务。方法可以接受参数并返回值。以下是一个简单的方法示例:

class MathUtils
{public static int Add(int a, int b){return a + b;}
}class Program
{static void Main(){int result = MathUtils.Add(3, 5);Console.WriteLine(result);}
}

在上述代码中:
public static int Add(int a, int b) 定义了一个名为 Add 的公共静态方法,接受两个 int 类型的参数 a 和 b,并返回一个 int 类型的值。

MathUtils.Add(3, 5) 在 Main 方法中调用了 Add 方法,并传递参数 3 和 5,返回的结果赋值给 result 变量。

八、总结

本文介绍了 C# 语言的基础内容,包括基本语法、数据类型、变量和常量、运算符、控制结构以及方法等。这些基础知识是进一步学习 C# 编程的基石,通过不断实践和深入学习,你将能够利用 C# 开发出各种功能强大的应用程序。

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

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

相关文章

springboot 启动原理

目标&#xff1a; SpringBootApplication注解认识了解SpringBoot的启动流程 了解SpringFactoriesLoader对META-INF/spring.factories的反射加载认识AutoConfigurationImportSelector这个ImportSelector starter的认识和使用 目录 SpringBoot 启动原理SpringBootApplication 注…

《Origin画百图》之脊线图

1.数据准备&#xff1a;将数据设置为y 2.选择绘图>统计图>脊线图 3.生成基础图形&#xff0c;并不好看&#xff0c;接下来对图形属性进行设置 4.双击图形>选择图案>颜色选择按点>Y值 5.这里发现颜色有色阶&#xff0c;过度并不平滑&#xff0c;需要对色阶进行更…

安卓(android)实现注册界面【Android移动开发基础案例教程(第2版)黑马程序员】

一、实验目的&#xff08;如果代码有错漏&#xff0c;可查看源码&#xff09; 1.掌握LinearLayout、RelativeLayout、FrameLayout等布局的综合使用。 2.掌握ImageView、TextView、EditText、CheckBox、Button、RadioGroup、RadioButton、ListView、RecyclerView等控件在项目中的…

星际智慧农业系统(SAS),智慧农业的未来篇章

新月人物传记&#xff1a;人物传记之新月篇-CSDN博客 相关文章&#xff1a;星际战争模拟系统&#xff1a;新月的编程之道-CSDN博客 新月智能护甲系统CMIA--未来战场的守护者-CSDN博客 “新月智能武器系统”CIWS&#xff0c;开启智能武器的新纪元-CSDN博客 目录 星际智慧农业…

MP4基础

一、什么是MP4&#xff1f; MP4是一套用于音频、视频信息的压缩编码标准&#xff0c;由国际标准化组织&#xff08;ISO&#xff09;和国际电工委员会&#xff08;IEC&#xff09;下属的“动态图像专家组”&#xff08;Moving Picture Experts Group&#xff0c;即MPEG&#xff…

揭秘算法 课程导读

目录 一、老师介绍 二、课程目标 三、课程安排 一、老师介绍 学问小小谢 我是一个热爱分享知识的人&#xff0c;我深信知识的力量能够启迪思考&#xff0c;丰富生活。 欢迎每一位对知识有渴望的朋友&#xff0c;如果你对我的创作感兴趣&#xff0c;或者我们有着共同的兴趣点&…

Visual Studio Code应用本地部署的deepseek

1.打开Visual Studio Code&#xff0c;在插件中搜索continue&#xff0c;安装插件。 2.添加新的大语言模型&#xff0c;我们选择ollama. 3.直接点connect&#xff0c;会链接本地下载好的deepseek模型。 参看上篇文章&#xff1a;deepseek本地部署-CSDN博客 4.输入需求生成可用…

97,【5】buuctf web [极客大挑战 2020]Greatphp

进入靶场 审代码 <?php // 关闭所有 PHP 错误报告&#xff0c;防止错误信息泄露可能的安全隐患 error_reporting(0);// 定义一个名为 SYCLOVER 的类 class SYCLOVER {// 定义类的公共属性 $sycpublic $syc;// 定义类的公共属性 $loverpublic $lover;// 定义魔术方法 __wa…

SOME/IP--协议英文原文讲解3

前言 SOME/IP协议越来越多的用于汽车电子行业中&#xff0c;关于协议详细完全的中文资料却没有&#xff0c;所以我将结合工作经验并对照英文原版协议做一系列的文章。基本分三大块&#xff1a; 1. SOME/IP协议讲解 2. SOME/IP-SD协议讲解 3. python/C举例调试讲解 Note: Thi…

大模型综合性能考题汇总

- K1.5长思考版本 一、创意写作能力 题目1&#xff1a;老爸笑话 要求&#xff1a;写五个原创的老爸笑话。 考察点&#xff1a;考察模型的幽默感和创意能力&#xff0c;以及对“原创”要求的理解和执行能力。 题目2&#xff1a;创意故事 要求&#xff1a;写一篇关于亚伯拉罕…

Workbench 中的热源仿真

探索使用自定义工具对移动热源进行建模及其在不同行业中的应用。 了解热源动力学 对移动热源进行建模为各种工业过程和应用提供了有价值的见解。激光加热和材料加工使用许多激光束来加热、焊接或切割材料。尽管在某些情况下&#xff0c;热源 &#xff08;q&#xff09; 不是通…

unity学习23:场景scene相关,场景信息,场景跳转

目录 1 默认场景和Assets里的场景 1.1 scene的作用 1.2 scene作为project的入口 1.3 默认场景 2 场景scene相关 2.1 创建scene 2.2 切换场景 2.3 build中的场景&#xff0c;在构建中包含的场景 &#xff08;否则会认为是失效的Scene&#xff09; 2.4 Scenes in Bui…

18.Word:数据库培训课程❗【34】

目录 题目 NO1.2.3.4 NO5设置文档内容的格式与样式 NO6 NO7 NO8.9 NO10.11标签邮件合并 题目 NO1.2.3.4 FnF12&#xff1a;打开"Word素材.docx”文件,将其另存为"Word.docx”在考生文件夹下之后到任务9的所有操作均基于此文件&#xff1a;"Word.docx”…

tiktok 国际版抖抖♬♬ X-Bogus参数算法逆向分析

加密请求参数得到乱码&#xff0c;最终得到X-Bogus

OpenCV:图像轮廓

目录 简述 1. 什么是图像轮廓&#xff1f; 2. 查找图像轮廓 2.1 接口定义 2.2 参数说明 2.3 代码示例 2.4 运行结果 3. 绘制图像轮廓 3.1 接口定义 3.2 参数说明 3.3 代码示例 3.4 运行结果 4. 计算轮廓周长 5. 计算轮廓面积 6. 示例&#xff1a;计算图像轮廓的面…

GMSL 明星产品之 MAX96724

上一篇文章中&#xff0c;我们介绍了摄像头侧 GMSL 加串器 MAX96717. 今天我们来介绍下 GMSL 解串器明星产品 MAX96724&#xff1a; 可将四路 GMSL™2/1 输入转换为 1 路、2 路或 4 路 MIPI D-PHY 或 C-PHY 输出。该器件支持通过符合 GMSL 通道规范的 50Ω 同轴电缆或 100Ω 屏…

城市道路车辆自行车摩托车公交车检测数据集VOC+YOLO格式5236张5类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;5236 标注数量(xml文件个数)&#xff1a;5236 标注数量(txt文件个数)&#xff1a;5236 …

VSCode插件Live Server

简介&#xff1a;插件Live Server能够实现当我们在VSCode编辑器里修改 HTML、CSS 或者 JavaScript 文件时&#xff0c;它都能自动实时地刷新浏览器页面&#xff0c;让我们实时看到代码变化的效果。再也不用手动刷新浏览器了&#xff0c;节省了大量的开发过程耗时&#xff01; 1…

论文阅读(十):用可分解图模型模拟连锁不平衡

1.论文链接&#xff1a;Modeling Linkage Disequilibrium with Decomposable Graphical Models 摘要&#xff1a; 本章介绍了使用可分解的图形模型&#xff08;DGMs&#xff09;表示遗传数据&#xff0c;或连锁不平衡&#xff08;LD&#xff09;&#xff0c;各种下游应用程序之…

穷举vs暴搜vs深搜vs回溯vs剪枝系列一>单词搜索

题解如下 题目&#xff1a;解析决策树&#xff1a;代码设计&#xff1a; 代码&#xff1a; 题目&#xff1a; 解析 决策树&#xff1a; 代码设计&#xff1a; 代码&#xff1a; class Solution {private boolean[][] visit;//标记使用过的数据int m,n;//行&#xff0c;列char…