如何将两个不同的字符串组合在一个字符串中

本文关键字:字符串 组合 一个 两个 | 更新日期: 2023-09-27 18:30:49

我已经检查了大多数问题可能包含我的解决方案,但我找不到任何问题。或者也许我不明白。所以,这是我的问题:

我想将两个字符串合二为一并继续单独使用它。

我的琴弦:

    static string name = ""; (for example: John or Jane)
    static string gender = ""; (for example: Mr. or Mrs.)

我想像这样将这两者合二为一:

    static string player = gender+name;
    Console.writeline("Hello "+player);

我想在我的控制台中看到它,如下所示:

 Hello Mr.John or Hello Mrs.Jane

我不想提到console.readline部分。将有条目,我将在其中键入姓名和性别。谢谢

编辑:

这就是我所做的(对不起,它花了太长时间):

    static string name = "";
    static string gender = "";
    static string player = name + gender;
    static void Main(string[] args)
    {
        Console.WriteLine("Welcome. What is your name?");
        name = Console.ReadLine();
        Console.WriteLine("Sex?'n-Male'n-Female");
        gender = Console.ReadLine();
        Console.WriteLine("Press Enter to continue");
        Console.ReadLine();
        Console.WriteLine("Welcome"+player);
        Console.ReadLine();
    }

这些结果类似于"欢迎__"

如何将两个不同的字符串组合在一个字符串中

问题是播放器应该是一个函数,而不是一个字符串。

String Player()
{
     return gender + name;
}

这必须在您的主要功能之外。

这里的问题是player是在类初始化时计算的。所以基本上你把string.Emptystring.Empty结合起来。 每次使用前不计算Player

因此,您可以在使用它之前执行player = name + gender;,但一个好的做法是使用限制在它们使用范围内的变量。由于您的姓名和性别在 Main 中使用,请使用局部变量。

static void Main(string[] args)
{
    string name;
    string gender;
    Console.WriteLine("Welcome. What is your name?");
    name = Console.ReadLine();
    Console.WriteLine("Sex?'n-Male'n-Female");
    gender = Console.ReadLine();
    Console.WriteLine("Press Enter to continue");
    Console.ReadLine();
    Console.WriteLine("Welcome " + gender + name);
    Console.ReadLine();
}

如果你愿意,你也可以做

string player = gender + name;
Console.WriteLine("Welcome " + player);

但我认为没有 temp 变量的意图已经足够明确了。如果需要更复杂的格式,也可以string.Format,它比一堆+运算符更干净。

 Console.WriteLine(string.Format("Welcome, {0} {1}!", gender, name));
Console.ReadLine();
player = gender+name;
Console.WriteLine("Welcome"+player);

这会将字符串设置为它们被读取的内容。您还需要一个 if 语句将 fe/male 更改为 mr/s。

你读取namegender,但在获得它们的值后你永远不会组合它们,所以player仍然是一个空字符串。

请改为这样做:

player = gender + name;
Console.WriteLine("Welcome "+player);
如果要

合并没有分隔符的字符串,可以使用String.Concat(string firstString,string secondString)。你可以使用String.Join(string separator, string[] stringsToBeJoined).第一个参数是合并的单个字符串中字符串之间的分隔符,第二个参数是将合并的字符串数组。