C# 将字符串转换为带字母的数组

C# 将字符串转换为带字母的数组,c#,C#,基本上我要做的就是拿一根绳子 string test = "hello"; 然后将其转换为数组,如下所示: string[] testing = { "h", "he", "hel", "hell", "hello" }; 这可能吗?尝试使用Linq: string test = "hello"; string[] arr = new string[] {test.Substring(0,1), test.Substring(0,2), test.Substring(0,3), te

基本上我要做的就是拿一根绳子

string test = "hello";
然后将其转换为数组,如下所示:

string[] testing = { "h", "he", "hel", "hell", "hello" };
这可能吗?

尝试使用Linq:

string test = "hello";
    string[] arr = new string[] {test.Substring(0,1), test.Substring(0,2), test.Substring(0,3), test.Substring(0,4), test.Substring(0,5)};
测试:

尝试使用Linq:

测试:

是的,你用Linq

    string test = "hello";      
    List<string> lst = new List<string>();

    int charCount = 1;

    while (charCount <= test.Length)
    {
        lst.Add(string.Join("", test.Take(charCount).ToArray()));           
        charCount++;
    }

    string[] testing = lst.ToArray();
string test=“hello”;
List lst=新列表();
int charCount=1;
而(charCount是的,您使用Linq

    string test = "hello";      
    List<string> lst = new List<string>();

    int charCount = 1;

    while (charCount <= test.Length)
    {
        lst.Add(string.Join("", test.Take(charCount).ToArray()));           
        charCount++;
    }

    string[] testing = lst.ToArray();
string test=“hello”;
List lst=新列表();
int charCount=1;

而(charCount您也可以这样做:

            List<string> list = new List<string>();
            for(int i = 1; i <= hello.Length; i++) {
               list.Add(hello.Substring(0,i));
            }
             Console.WriteLine(string.Join(", ", list.ToArray()));
List List=新列表();

对于(int i=1;i您也可以执行以下操作:

            List<string> list = new List<string>();
            for(int i = 1; i <= hello.Length; i++) {
               list.Add(hello.Substring(0,i));
            }
             Console.WriteLine(string.Join(", ", list.ToArray()));
List List=新列表();

对于(int i=1;i我建议使用Dmitry的LINQ版本,但是如果您想要一个使用数组的简单版本,就像您最初的问题一样:

string input = "hello";
string[] output = new string[input.Length];
for( int i = 0; i < test.Length; ++i )
{
    output[i] = test.Substring( 0, i + 1 );
}
string input=“hello”;
string[]输出=新字符串[input.Length];
对于(int i=0;i
我建议使用Dmitry的LINQ版本,但如果您想要一个使用类似原始问题的数组的简单版本:

string input = "hello";
string[] output = new string[input.Length];
for( int i = 0; i < test.Length; ++i )
{
    output[i] = test.Substring( 0, i + 1 );
}
string input=“hello”;
string[]输出=新字符串[input.Length];
对于(int i=0;i
“这可能吗?”是的,是的。是的,但听起来像是一个家庭作业问题。你刚刚问了。给自己倒杯啤酒!”这可能吗是的,是的。是的,但听起来像是一个家庭作业问题。你刚刚做了。给自己倒一杯啤酒!让OP这样做:P这并不提供问题的答案。要评论或要求作者澄清,请在他们的帖子下方留下评论。-@CDspace代码似乎产生了所需的输出。它按照OP的要求提供输出。一个d逻辑上也是正确的。为什么你认为这是错误的?让OP这样做:P这并没有提供问题的答案。若要评论或要求作者澄清,请在他们的帖子下方留下评论。-@CDspace代码似乎产生了所需的输出。它按照OP的要求提供输出。逻辑上也是正确的。为什么你认为这不对吗?