0

用 C# 编码想从名称后面删除两个字母并添加一些其他字母。

    static void Main(string[] args)
    {
        string name;
        Console.WriteLine("Whats your name ?");
        name = Console.ReadLine();
        if (name.EndsWith("ia") == true) 
        {
            string v1 = name.Remove(name.Length - 2);
            v1.Insert(name.Length, "le");
            Console.WriteLine("Hello, {0}", v1);
            Console.ReadKey();
        }
    }

例如,如果名称是 Sofia,控制台会写 Hello, Sofle 但程序不会为我启动。

4

2 回答 2

3

如果你更换它会做你想做的事

v1.Insert(name.Length, "le");

经过

v1 = v1.Insert(v1.Length, "le");

原因

  1. Insert方法返回一个新字符串而不是修改原始字符串。
  2. 您需要使用v1.Length,而不是name.Length因为您在末尾添加v1,而不是name
于 2020-09-19T12:09:02.643 回答
1

Insert返回一个新字符串,因此您必须编写:

v1 = v1.Insert(v1.Length, "le");
于 2020-09-19T12:07:43.243 回答