Есть ли метод StartWith для массивов в .NET? Или что-то подобное в LINQ?Метод StartWith для массивов
var arr1 = { "A", "B, "C" }
var arr2 = { "A", "B, "C", "D" }
var arr3 = { "A", "B, "CD" }
var arr4 = { "E", "A, "B", "C" }
arr2.StartWith(arr1) // true
arr1.StartWith(arr2) // false
arr3.StartWith(arr1) // false
arr4.StartWith(arr1) // false
Или я должен сделать это просто:
bool StartWith(string[] arr1, string[] arr2)
{
if (arr1.Count() < arr2.Count) return false;
for (var i = 0; i < arr2.Count(), i++)
{
if (arr2[i] != arr1[i]) return false;
}
return true;
}
Я ищу наиболее эффективным способом, чтобы сделать это.
ли это "просто". Нет никакого встроенного способа сделать это. Btw .: вопросы о рабочем коде должны идти в codereview.stackexchange.com – HimBromBeere
избегать использования '.Count()' use '.Length' –
Не предполагайте, что все последовательности являются массивами. Это текущий год. Используйте 'IEnumerable'. Вызовите GetEnumerator() по обоим параметрам и зациклируйте на них. –