gpt4 book ai didi

c# - Array.ToString() 返回 System.Char[] c#

转载 作者:太空狗 更新时间:2023-10-30 00:07:16 25 4
gpt4 key购买 nike

我正在制作一个刽子手游戏,在游戏开始时,玩家必须猜测的单词被打印为星号。在尝试编写一次并且只有我无法修复错误的困惑代码之后,我才刚刚开始重新制作它。所以我决定最好再写一遍。唯一的问题是,当我尝试使用 array.ToString(); 打印出我的数组时它只返回 System.char[]。见下文。

代码:

class Program
{
static void Main(string[] args)
{
string PlayerOneWord;
string PlayerTwoGuess;
int lives = 5;

Console.WriteLine("Welcome to hangman!\n PLayer one, Please enter the word which player Two needs to guess!");
PlayerOneWord = Console.ReadLine().ToLower();

var stars = new char[PlayerOneWord.Length];
for (int i = 0; i < stars.Length ; i++)
{
stars[i] = '*';
}

string StarString = stars.ToString();

Console.Write("Word to Guess: {0}" , StarString);

Console.ReadLine();
}
}

输出:

Output

输出应该是猜词:你好

请有人解释为什么会这样,因为这不是我第一次遇到这个问题。

最佳答案

在简单数组上调用 ToString 只会返回 "T[]" 而不管 T 的类型是什么。它对 char[] 没有任何特殊处理。

要将 char[] 转换为 string,您可以使用:

string s = new string(charArray);

但是对于您的具体问题,有一个更简单的解决方案:

string stars = new string('*', PlayerOneWord.Length);

构造函数public String(char c, int count)重复 c count 次。

关于c# - Array.ToString() 返回 System.Char[] c#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27125430/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com