技术文章库 - 编程教程与技术分享平台


在 C# 中不使用临时变量交换两个字符串

要在不使用临时变量的情况下交换两个字符串,您可以尝试以下代码和逻辑。将第二个字符串附加到第一个字符串。str1=str1+str2;将str1的值赋给str2。str2=str1.Substring(0,str1.Length-str2.Length);现在,最后一步是将str2的值赋给str1。−str1=str1.Substring(str2.L

C# 中的抽象类、密封类和类成员

抽象类包括抽象方法和非抽象方法。您无法实例化抽象类。密封类可防止继承,您无法将其用作基类。抽象类要声明抽象类,您需要将关键字abstract放在类定义之前。抽象类中的类成员的示例可以是以下定义抽象方法−publicabstractclassVehicle{publicabstractvoiddisplay();}抽象方法定义后面跟着一个分号,因为它没有实现。密封类

C# 中的任务

任务在C#中表示异步操作。以下说明如何在C#中启动任务。使用委托启动任务。Taskt=newTask(delegate{PrintMessage();});t.Start();使用任务工厂启动任务。Task.Factory.StartNew(()=>{Console.WriteLine("Welcome!");});您也可以使用Lambda。Tas

C# 中的计时器

用于设置计时器的命名空间是System.Timers。Timer类会在设定的时间间隔后生成一个事件,并可选择生成重复事件。首先,创建一个间隔5秒的计时器对象−timer=newSystem.Timers.Timer(5000);为计时器设置已完成事件。当间隔−时,将触发该事件。timer.Elapsed+=OnTimedEvent;现在启动计时器。t

C# 中的内置异常

异常是程序执行时出现的问题。以下关键字处理C#中的异常:trytry块标识激活特定异常的代码块。Catchcatch关键字表示捕获异常。finally执行一组给定的语句,无论是否引发异常。throw当程序中出现问题时,会引发异常。示例让我们看一个处理C#程序中的错误的示例−usingSystem;namespaceMyErrorHandlingApplication

C# 中的 try 关键字

try块标识触发特定异常的代码块。它后面跟着一个或多个catch块。try{}此外,您还需要设置catch语句来捕获异常−try{//导致异常的语句}catch(ExceptionNamee1){//错误处理代码}下面是一个例子−示例classDemo{intresult;Demo(){result=0;

C# 中的加法和连接

要在C#中添加和连接字符串,请使用string.Concat方法。加号运算符也可用于相同的连接目的。加号运算符stringstr2="Hanks"+str1;示例让我们看一个使用+运算符连接字符串的示例−usingSystem;classProgram{staticvoidMain(){stringstr1=&qu

在 C# 中修剪字符串(删除前导和尾随空格)

要在C#中修剪字符串,请使用正则表达式。首先,设置正则表达式的模式−stringpattern="\s+";假设以下字符串的前导和尾随空格均为−stringinput="WelcomeUser";现在使用正则表达式,设置模式并在C#中将结果保存为新的字符串。Regexrgx=newRegex(pa

C# 中的 abstract 关键字

C#中的abstract关键字用于抽象类。C#中的抽象类包括抽象和非抽象方法。您无法实例化抽象类。抽象类Vehicle和抽象方法display()的示例−publicabstractclassVehicle{publicabstractvoiddisplay();}抽象类有派生类:Bus、Car和Motorcycle。以下是Car派生类&mi

在 C# 中交换两个数字

要交换两个数字,请使用以下逻辑。设置两个用于交换−的变量val1=100;val2=200;现在执行以下操作来交换−val1=val1+val2;val2=val1-val2;val1=val1-val2;以下是代码−示例usingSystem;namespaceDemo{classProgram{sta

C# 中的 Virtual、Sealed、New 和 Abstract 类

Virtualvirtual关键字允许类被重写。要在子类中重写父类方法,请将父类方法声明为virtual。Sealed当一个类被声明为Sealed时,它不能被继承,抽象类也不能被声明为Sealed。为了防止被重写,请在C#中使用seal修饰符。在C#中,如果在方法上使用seal修饰符,该方法将失去重写功能。Sealed方法应该是派生类的一部分,并且该方法必须是被重写的方

在 C# 中访问属性和方法

属性是一种声明性标记,用于向运行时传达有关程序中各种元素(如类、方法、结构、枚举器、程序集等)行为的信息。设置属性−[attribute(positional_parameters,name_parameter=value,...)]元素此处,属性的名称和值位于[]位置参数内,允许您指定信息。示例以下是在C#中访问属性和方法的示例−#defineDE

C# 程序的结构体和成员

结构体是一种值类型数据类型。它可以帮助您使单个变量保存各种数据类型的相关数据。struct关键字用于创建结构体。要定义结构体,必须使用struct语句。struct语句为您的程序定义一种新的数据类型,其中包含多个成员。例如,您可以这样声明Book结构体。以下是其成员−structBooks{publicstringtitle;publicstringaut

C# 中的数组是否从零开始索引?

是的,C#中的数组从零开始索引。让我们看看−是怎样的如果数组为空,则它有零个元素,长度为0。如果数组在0个索引中有一个元素,则它的长度为1。如果数组在0和1个索引中有两个元素,则它的长度为2。如果数组在0、1和2个索引中有三个元素,则它的长度为3。以下表示C#中的数组从索引0开始−/*从索引0开始*/for(i=0

C# 中的字符串字面量与字符串对象

字符串字面量字符串字面量或常量用双引号""""或@""括起来。字符串包含与字符字面量类似的字符:普通字符、转义序列和通用字符。以下是一些字符串字面量−的示例"Hello,World""Welcome,\"以下示例展示了字符串字面量的用法−示例usingSystem;namespaceDemo{

C# 中的断言

Assert语句是在运行时捕获程序逻辑错误的有效方法。它有两个参数−表示真条件的布尔表达式,以及在为假时显示的内容。断言在大型复杂程序中很有用,可以快速清除通常在修改代码时出现的错误。避免在assert方法中使用任何函数调用。您需要确保在Assert中添加的任何代码在被删除时都不应更改输出。这是在程序中实现Debug.Assert时。要实现它,您可以使用临时变量&m

C# 中 Double 类型的字符串格式

使用静态方法String.Format在C#中格式化double类型的字符串。保留三位小数−String.Format("{0:0.000}",987.383);String.Format("{0:0.000}",987.38);String.Format("{0:0.000}",987.7899);保留千

C# 中的静态方法与非静态方法

将成员函数声明为静态函数。此类函数只能访问静态变量。静态函数甚至在对象创建之前就已存在。静态类无法实例化,并且只能包含静态成员。使用static关键字设置静态方法−publicstaticintgetNum(){returnnum;}以下示例演示了静态方法和非静态方法的使用−示例usingSystem;namespaceStaticVarApplic

C# 程序检查二进制表示是否为回文

为了检查回文,假设我们的数字是5,其二进制为−101101的回文是101,要检查,您需要使用以下函数反转位。这里,使用按位左移和按位右移运算符−publicstaticlongfuncReverse(longnum){longmyRev=0;while(num>0){myRev<<=1;if((num

C# 中的 StringWriter 与 StringReader 有何区别?

StringReader和StringWriter派生自TextReader和TextWriterStringWriter用于写入字符串缓冲区。它实现了TextWriter接口,用于将信息写入字符串。对于StringWriter−示例StringWritersWriter=newStringWriter();while(true){myChar=s