wiederholen habe ich eine Liste der benutzerdefinierten Objekte, zB:Linq jedes n-te Element für einen bestimmten Bereich innerhalb einer Liste <T>
public class MyObject
{
public int MyField { get; set; }
}
Die Liste hat 12 Objekte, in denen die MyField Eigenschaft anfänglich 0 ist, so die Objekte wäre:
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
ich möchte all n mal das Überspringen x Artikel wiederholen. Also, wenn ich 2 haben wiederholen und 3 überspringen, sollten die neuen Werte sein:
1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0
Wenn ich 3 mal wiederholen möchten und 4 überspringen, wären die neuen Werte:
1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
Ist es möglich, dies mit Linq
zu tun?
Können Sie weitere Beispiele mit 0 und 1 statt true false liefern. Nicht ganz klar, was du erreichen willst. – Dmytro
Es wäre sinnvoll, LINQ zu verwenden, um eine neue Liste zu erstellen, die wie beschrieben permutiert, aber nicht geändert wird. So könnten Sie eine neue Erweiterungsmethode für 'IEnumerable' schreiben, die tun würde, was Sie brauchen. Etwas wie 'list = list.MyThing (2,3, x => x + 1)', wobei 'MyThing' das Lambda aufruft, um einen neuen Wert für die durch die Parameter skip/repeat angezeigten Elemente zu erhalten, und gibt die anderen Elemente zurück wie es sie findet. Alle He-Spats sind heutzutage wie ein Bruder, bist du sogar unveränderlich? OMG diese Sammlung ist buchstäblich so veränderlich, ich mag es nicht einmal. –
Beachten Sie, dass meine Herangehensweise Spaß macht, aber wahrscheinlich kontraproduktiv ist, um Ihr Feature aus der Tür zu bekommen. –