C# - Вопрос про использование Trim() в примере Microsoft

Код из примера

using System;

public class Example
{
    public static void Main()
    {
        Console.Write("Enter your first name: ");
        string firstName = Console.ReadLine();
      
        Console.Write("Enter your middle name or initial: ");
        string middleName = Console.ReadLine();
      
        Console.Write("Enter your last name: ");
        string lastName = Console.ReadLine();
      
        Console.WriteLine();
        Console.WriteLine("You entered '{0}', '{1}', and '{2}'.", 
                        firstName, middleName, lastName);
      
        string name = ((firstName.Trim() + " " + middleName.Trim()).Trim() + " " + 
                    lastName.Trim()).Trim();
        Console.WriteLine("The result is " + name + ".");

        // The following is a possible output from this example:
        //       Enter your first name:    John
        //       Enter your middle name or initial:
        //       Enter your last name:    Doe
        //       
        //       You entered '   John  ', '', and '   Doe'.
        //       The result is John Doe.
    }
}

Вопрос - для чего переменная name, которая не вводится с клавиатуры пользователем, все равно обрезается после обрезания переменных, которые пользователь вводит сам?

string name = ((firstName.Trim() + " " + middleName.Trim()).Trim() + " " + lastName.Trim()).Trim();

Код работает и без этого добавления.


Ответы (1 шт):

Автор решения: CrazyElf

Казалось бы лишние Trim тут делаются видимо для того, чтобы обрезать лишние связующие пробелы в случае ввода пустых значений в качестве middleName и/или lastName.

→ Ссылка