C#中new String()构造函数

本文通过一个 C# 示例介绍了如何创建并操作 Unicode 字符串,包括希腊字母的使用、字符串拼接及字符位置查找等基本操作。

 static void Main()
 {
        // Create a Unicode String with 5 Greek Alpha characters
        String szGreekAlpha = new String('/u0319', 5);
        // Create a Unicode String with a Greek Omega character
        String szGreekOmega1 = new String(new char[] { '/u03A9', '/u03A9', '/u03A9' });
        String szGreekOmega = new String(new char[] { '/u03A9', '/u03A9', '/u03A9' }, 2, 1);

        String szGreekLetters = String.Concat(szGreekOmega, szGreekAlpha, szGreekOmega.Clone());
        Console.WriteLine(szGreekAlpha);
        Console.WriteLine(szGreekOmega1);
        Console.WriteLine(szGreekOmega);
        // Examine the result
        Console.WriteLine(szGreekLetters);

        // The first index of Alpha
        int ialpha = szGreekLetters.IndexOf('/u0319');
        // The last index of Omega
        int iomega = szGreekLetters.LastIndexOf('/u03A9');

        Console.WriteLine("The Greek letter Alpha first appears at index " + ialpha +
            " and Omega last appears at index " + iomega + " in this String.");
 }

 

 

结果:

?????

ΩΩΩ

Ω

Ω?????Ω

The Greek letter Alpha first appears at index 1 and Omega last appears at index
6 in this String.

C# 中,判断一个函数是否为构造函数可以依据以下几个特征: ### 名称与类名相同 构造函数的名称必须与类的名称完全相同,这是构造函数的一个重要标识。例如: ```csharp public class Person { // 构造函数,名称与类名相同 public Person() { // 构造函数的代码逻辑 } } ``` 在这个示例中,`Person` 类的构造函数名称也是 `Person`,符合构造函数名称与类名相同的规则[^2][^3][^4]。 ### 无返回类型 构造函数没有任何返回类型,连 `void` 也不允许。下面是一个正确的构造函数示例: ```csharp public class Car { public Car(string make, string model) { // 构造函数体 } } ``` 这里的 `Car` 构造函数没有返回类型声明,与普通方法区分开来[^2][^3]。 ### 调用时机 构造函数在使用 `new` 关键字创建类的新对象时自动执行。例如: ```csharp Person person = new Person(); ``` 当执行 `new Person()` 时,`Person` 类的构造函数就会被调用,这也是判断构造函数的重要依据之一[^2][^3]。 ### 构造函数重载 构造函数可以进行重载,即一个类可以有多个构造函数,它们的参数列表不同。例如: ```csharp public class Animal { public Animal() { // 无参数构造函数 } public Animal(string name) { // 带参数的构造函数 } } ``` 在 `Animal` 类中,有两个构造函数,一个无参数,一个带一个 `string` 类型的参数,通过参数列表的不同实现了构造函数的重载[^3]。 ### 静态构造函数 静态构造函数用于初始化类的静态数据,它没有访问修饰符,也没有参数,并且只能有一个静态构造函数。静态构造函数在类的任何实例被创建或任何静态成员被引用之前自动执行。示例如下: ```csharp public class MyClass { public static int StaticField; // 静态构造函数 static MyClass() { StaticField = 10; } } ``` 在这个例子中,`MyClass` 的静态构造函数会在类的实例创建或静态成员访问之前初始化 `StaticField` 字段[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值