【发布时间】:2015-05-09 23:16:56
【问题描述】:
我有一些代码不能按预期工作。作为输出,我得到:
Concatenation.Concatenation+ConcatWord
我不知道如何让它按我的意愿工作。它应该输出数组中最大的连接词及其字符数。输入可能是:
string[] words = {"five","fivetwo","fourfive","fourfivetwo","one","onefiveone","two","twofivefourone"}`
输出应该是:
"fourfivetwo" with 11 characters
我认为这部分有问题,但我不确定。:
List<ConcatWord> concatWords = new List<ConcatWord>();
for (int i = 0; i < data.Length; i++)
{
ConcatWord concatWord = new ConcatWord(i, data[i]);
for (int j = 0; j < data.Length; j++)
{
if (i != j)
{
if (data[i].Contains(data[j]) && data[i].Length > data[j].Length)
{
concatWord.words.Add(data[j]);
}
}
}
}
【问题讨论】:
-
我无法理解这个问题。请阅读stackoverflow.com/help/mcve 并提供一个重现问题的示例以及所需的输出。
-
您能分享一下您的程序的输入和预期输出吗?
-
这段代码不好理解。我会把它分解成单独的方法,这样每个方法都做一件事。
-
什么是
ConcatWord? -
@Jon Kittell,好的,我添加了另一个带有一些评论的代码,
ConcatWord是我从单词数组中预期更大的串联单词列表。
标签: c# arrays concatenation