给定一个类的对象列表 ( List<Type1>
)
item1.isbool = true, beat = 1
item2.isbool = true, beat = 1.333
item3.isbool = true, beat = 1.666
item4.isbool = false, beat = 2
item5.isbool = false, beat = 3
item6.isbool = false, beat = 4
item7.isbool = false, beat = 5
item8.isbool = true, beat = 5.333
item9.isbool = true, beat = 5.666
我想获得连音组(可变大小)中的起始值和停止值以添加到第二类(List<Type2>.Add()
)的列表中
item1.tuplet = start
item3.tuplet = stop
item8.tuplet = start
item9.tuplet = stop
元素的顺序很重要。MoreLinq 作为一个选项,但不确定我需要执行的操作类型来获取这些值。它可能是分区或某种 GroupBy,但这似乎不起作用。
我最终需要的最终结果将是
List2.Add(new Object() {Tuplet = TupletType.Start});
List2.Add(new Object() {Tuplet = TupletType.None});
List2.Add(new Object() {Tuplet = TupletType.Stop});
List2.Add(new Object() {Tuplet = TupletType.None});
List2.Add(new Object() {Tuplet = TupletType.None});
List2.Add(new Object() {Tuplet = TupletType.None});
List2.Add(new Object() {Tuplet = TupletType.None});
List2.Add(new Object() {Tuplet = TupletType.Start});
List2.Add(new Object() {Tuplet = TupletType.Stop});