我有一个CharArray:
char[] letters = "qwertyuiopasdfghjklzxcvbnm123456789".ToCharArray();我想知道如何从这个数组中获取一个特定的字母。例如,让我们说我有
int lengthMin = 1;
int lengthMax = 5;按照上面的代码,我如何从CharArray获得第一、第二、第三、第四和第五个字母?(预先谢谢:)
发布于 2016-05-18 21:41:12
就像这样:
var specificLetters = letters
.Skip(lengthMin - 1)
.Take(lengthMax - lengthMin + 1)
.ToArray();而且,与@ecanmcdonnal的解决方案不同,只要它们不是负的,您就不必担心范围。
发布于 2016-05-18 21:35:09
您只需使用长度最大值为上限,长度最小为下限的for循环即可。但是,您还应该进行一些检查,以确保>= 0和lengthmax是<= letters.length。为了一个简洁的例子,我在这里排除了这一点。
List<char> chars = new List<char>();
for (int i = lengthMin; i < lengthMax; i++)
{
chars.Add(letters[i]);
}发布于 2016-05-18 21:41:38
我会使用数组复制
var target = new char[lengthMax - lengthMin + 1];
Array.Copy(letters , lengthMin , target , 0, lengthMax );https://stackoverflow.com/questions/37310402
复制相似问题