子串问题:子串转换为char

时间:2016-02-15 20:01:35

标签: c# string char substring

我正在制作打字游戏,我需要在字符串中创建每个字符的列表,以便我可以定义代码应该期待的输入。

我试过了:

static List<char> chars = "This is my string".ToCharArray().ToList();

但是因为char不包含大小写信息,所以它会抛出这个错误:

ArgumentException:名为:T的InputKey未知。

我知道char不起作用,我需要每个字母都是字符串,而不是字符。所以,我使用Substring创建了一个方法:

static List<string> ToStringArray(string input)
{
    List<string> strings = new List<string>();
    for (int i = 0; i < input.Length; i++)
    {
        strings.Add(input.Substring(i, 1));
    }
    return strings;
}

static List<string> strings = ToStringArray("This is my string");

但显然Substring正在转换为char,因为我的代码仍然抛出相同的错误,如果我将子字符串的长度更改为2,我的代码将再次运行。如何强制Substring不转换为char?或者我应该以完全不同的方式解决这个问题?

1 个答案:

答案 0 :(得分:0)

我认为你可能会从一个比它需要的更复杂的角度来接近这个。

如果你有:

string testString = "This is my string";

然后您可以按索引访问每个字符,例如testString[1](这将是&#39; h&#39;)

如果你担心案件,那么你可以用

引用字符串
testString.ToLower();