常用C#关键字详解教程(比较全面)

常用C#关键字详解教程

C#是一种现代的、对象导向的编程语言,用于.NET平台。在C#中有许多关键字,这些关键字用于定义变量、控制流程、类或结构、枚举等。下面我们将详细讲解C#中常用的关键字。

变量定义相关关键字

var

var用于在编译期间推断变量类型。它指示编译器基于初始化表达式计算左侧变量的类型。例如:

var str = "hello world";

这里,编译器会根据初始化的值为str推断出其类型为string

const

const用于定义常量,它的值在编译时就确定了,且不可更改。例如:

const int num = 5;

这里,num被定义为一个常量,其值为5。

流程控制相关关键字

if

if用于控制程序的分支执行。如果if中的条件为true,则执行if中的语句;否则,执行下面的语句。例如:

int num = 10;
if (num > 5)
{
    Console.WriteLine("num is greater than 5.");
}
else
{
    Console.WriteLine("num is less than or equal to 5.");
}

这里,if语句判断num是否大于5,如果是,则执行第一条语句。

switch

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

int num = 2;
switch (num)
{
    case 1:
        Console.WriteLine("num is 1");
        break;
    case 2:
        Console.WriteLine("num is 2");
        break;
    default:
        Console.WriteLine("num is not 1 or 2");
        break;
}

这里,switch根据num的值,选择不同的case执行。

类或结构相关关键字

class

class用于定义一个类。类是一种用户自定义的参照类型,其中包含数据和方法。例如:

class MyClass
{
    int num1;
    int num2;
    public void SetNum(int n1, int n2)
    {
        num1 = n1;
        num2 = n2;
    }
    public int GetSum()
    {
        return num1 + num2;
    }
}

这里,MyClass类有两个私有成员变量num1、num2,提供了一个公有方法SetNumGetSum,用于设置和获取这两个变量的值。

struct

struct用于定义一个结构体。和类一样,结构体也能够包含数据和方法。但它是值类型而不是引用类型,这意味着当你使用结构体时,它的值会被复制到一个新的位置。例如:

struct MyStruct
{
    int num1;
    int num2;
    public void SetNum(int n1, int n2)
    {
        num1 = n1;
        num2 = n2;
    }
    public int GetSum()
    {
        return num1 + num2;
    }
}

枚举相关关键字

enum

enum用于定义一个枚举类型。枚举是一种值类型,它包含了一组命名的常量。例如:

enum WeekDays
{
    Sunday,
    Monday,
    Tuesday,
    Wednesday,
    Thursday,
    Friday,
    Saturday
}

这里,WeekDays是一个枚举类型,包含了七个命名的常量。

示例

下面是一个使用ifswitch关键字的例子:

using System;

class Program
{
    static void Main()
    {
        int num = 3;
        if (num > 5)
        {
            Console.WriteLine("num is greater than 5.");
        }
        else
        {
            Console.WriteLine("num is less than or equal to 5.");
        }
        switch (num)
        {
            case 1:
                Console.WriteLine("num is 1");
                break;
            case 2:
                Console.WriteLine("num is 2");
                break;
            default:
                Console.WriteLine("num is not 1 or 2");
                break;
        }
    }
}

上面的代码定义了一个整型变量num,如果它大于5,则输出num is greater than 5.,否则输出num is less than or equal to 5.。然后,使用switch语句根据num的值输出不同的结果。

下面是一个使用classstruct关键字的例子:

using System;

class Program
{
    static void Main()
    {
        MyClass myClass = new MyClass();
        myClass.SetNum(3, 5);
        Console.WriteLine("The sum of num1 and num2 is " + myClass.GetSum() + ".");
        MyStruct myStruct = new MyStruct();
        myStruct.SetNum(4, 6);
        Console.WriteLine("The sum of num1 and num2 is " + myStruct.GetSum() + ".");
    }
}

class MyClass
{
    int num1;
    int num2;
    public void SetNum(int n1, int n2)
    {
        num1 = n1;
        num2 = n2;
    }
    public int GetSum()
    {
        return num1 + num2;
    }
}

struct MyStruct
{
    int num1;
    int num2;
    public void SetNum(int n1, int n2)
    {
        num1 = n1;
        num2 = n2;
    }
    public int GetSum()
    {
        return num1 + num2;
    }
}

上面的代码示例定义了一个类MyClass和一个结构体MyStruct,用于进行简单的数学计算。我们创建了一个类对象和一个结构体对象,并使用它们提供的方法来计算两个整数的总和。此外,我们也可以看到如何在C#中进行字符串拼接。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:常用C#关键字详解教程(比较全面) - Python技术站

(0)
上一篇 2023年5月15日
下一篇 2023年5月15日

相关文章

  • Net Core全局配置读取管理方法ConfigurationManager

    在本文中,我们将详细讲解如何在.NET Core中使用ConfigurationManager全局配置读取管理方法,并提供两个示例说明。 准备工作 在开始之前,您需要安装以下软件: .NET Core SDK 使用ConfigurationManager读取配置 在.NET Core项目中添加System.Configuration.Configuratio…

    C# 2023年5月16日
    00
  • C#中泛型容器Stack的用法并实现”撤销/重做”功能

    以下是详细讲解“C#中泛型容器Stack的用法并实现”撤销/重做”功能”的完整攻略。 Stack的用法 Stack是C#中的泛型容器,用于实现“栈”这种数据结构。其中T代表栈中存储的元素类型。 Stack主要支持以下几种常用操作: Push(T item):将一个元素压入栈中 Pop():将栈顶的元素弹出并返回 Peek():返回栈顶的元素但不弹出 Clea…

    C# 2023年5月15日
    00
  • C#实现把图片转换成二进制以及把二进制转换成图片的方法示例

    下面是详细的C#实现把图片转换成二进制以及把二进制转换成图片的方法示例攻略: 把图片转换成二进制 方法一:使用FileStream 首先需要用 FileStream 类打开图片,读取图片的二进制数据: string imagePath = "image.jpg"; byte[] imageData; using (var stream =…

    C# 2023年5月31日
    00
  • c#中如何获取指定字符前的字符串

    在C#中获取指定字符(或字符串)前的字符串,可以采用String类的Substring和IndexOf方法来实现。 方法1:Substring方法 Substring方法是String类提供的一个获取子字符串的方法,可以通过指定起始位置和截取长度来获取指定范围的子字符串。我们可以通过查找指定字符(或字符串)的位置,然后取其前面的子串来获取需要的字符串。 示例…

    C# 2023年6月6日
    00
  • C#泛型类型知识讲解

    C#泛型类型是一种高效、强类型和可重用的代码编写方式,其中泛型类型参数可以在运行时指定,达到代码重用和类型安全的目的。 常见的泛型类型 C#泛型类型中常见的有以下几种: 泛型类:在类定义时使用泛型类型参数,可以在运行时指定具体类型,使得类具有高复用性和通用性。 示例代码: public class GenericClass<T> { privat…

    C# 2023年6月7日
    00
  • C#栈和队列的简介,算法与应用简单实例

    C#栈和队列的简介 什么是栈和队列? 栈(Stack)和队列(Queue)是两种常用的数据结构,它们都是线性数据结构。 栈就像是一个箱子,我们往箱子里放入物品(压栈),并取出箱子里面的物品(弹栈)。 队列就像是一条排队的队伍,我们往队伍的尾部加入一个人(入队),并从队伍的头部取出一个人(出队)。 算法 栈(Stack) 1.入栈(Push):将一个元素加入栈…

    C# 2023年5月31日
    00
  • 二叉树的遍历算法(详细示例分析)

    二叉树的遍历算法是对二叉树中节点的访问顺序的规定。主要分为三种,分别是前序遍历、中序遍历和后序遍历。 1.前序遍历 前序遍历是指先访问根节点,再依次访问左子树和右子树。用递归来实现的话,代码如下所示: def preorderTraversal(root: TreeNode) -> List[int]: if not root: return [] r…

    C# 2023年6月8日
    00
  • C# 9 中新加入的关键词 init,record,with

    为了更好地阐述C#9中的三个新概念,init, record, with,我将分别进行介绍。 init init修饰符是C#9中一项很有用的新功能,它可以用于定义只能在创建时被修改的变量或属性。使用init修饰符的目的是减少意外修改属性值的情况,例如在构造函数之后不期望修改属性值,这样会增加数据不一致性的风险。以下是一段演示如何使用init修饰符的代码: p…

    C# 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部