本文整理汇总了C#中MultiDimensionalArray.Remove方法的典型用法代码示例。如果您正苦于以下问题:C# MultiDimensionalArray.Remove方法的具体用法?C# MultiDimensionalArray.Remove怎么用?C# MultiDimensionalArray.Remove使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MultiDimensionalArray
的用法示例。
在下文中一共展示了MultiDimensionalArray.Remove方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Create1D
public void Create1D()
{
IMultiDimensionalArray array = new MultiDimensionalArray();
array.Add(1);
array.Add(2);
array.Add(3);
array.Remove(2);
log.Info(array.ToString());
Assert.AreEqual(1, array.Rank);
Assert.AreEqual(2, array.Count);
}
示例2: IndexOnValuesRemoved
public void IndexOnValuesRemoved()
{
IMultiDimensionalArray<int> array = new MultiDimensionalArray<int>();
array.Add(2);
array.Add(3);
int callCount = 0;
array.CollectionChanged += delegate(object sender, NotifyCollectionChangedEventArgs e)
{
var args = (MultiDimensionalArrayChangedEventArgs)e;
Assert.AreEqual(new[] { 1 }, args.MultiDimensionalIndex);
callCount++;
};
array.Remove(3);
Assert.AreEqual(1, callCount);
}
示例3: IndexOnValuesRemoved
public void IndexOnValuesRemoved()
{
IMultiDimensionalArray<int> array = new MultiDimensionalArray<int>();
array.Add(2);
array.Add(3);
int callCount = 0;
array.CollectionChanged += (sender, e) =>
{
Assert.AreEqual(new[] {1}, e.MultiDimensionalIndex);
callCount++;
};
array.Remove(3);
Assert.AreEqual(1, callCount);
}
示例4: UnsubscribePropertyChanged
public void UnsubscribePropertyChanged()
{
var testNotifyPropertyChangedObject = new TestNotifyPropertyChangedObject();
IMultiDimensionalArray<TestNotifyPropertyChangedObject> array =
new MultiDimensionalArray<TestNotifyPropertyChangedObject>();
//remove the item from the array
array.Insert(0, testNotifyPropertyChangedObject);
TestHelper.AssertPropertyChangedIsFired((INotifyPropertyChanged)array, 1, testNotifyPropertyChangedObject.FireChanged);
array.Remove(testNotifyPropertyChangedObject);
TestHelper.AssertPropertyChangedIsFired((INotifyPropertyChanged)array, 0, testNotifyPropertyChangedObject.FireChanged);
//reinsert & replace
array.Insert(0,testNotifyPropertyChangedObject);
array[0] = new TestNotifyPropertyChangedObject {Name = "new"};
TestHelper.AssertPropertyChangedIsFired((INotifyPropertyChanged)array, 0, testNotifyPropertyChangedObject.FireChanged);
//removeat
array.Insert(0, testNotifyPropertyChangedObject);
array.RemoveAt(0);
TestHelper.AssertPropertyChangedIsFired((INotifyPropertyChanged)array, 0, testNotifyPropertyChangedObject.FireChanged);
}
示例5: RemoveDoesNothingWhenValueIsNotInArray
public void RemoveDoesNothingWhenValueIsNotInArray()
{
IMultiDimensionalArray<double> array = new MultiDimensionalArray<double>()
{IsAutoSorted = true};
array.Add(0.0);
array.Add(10.0);
//remove something that was never there. shoud have no effect (just like in List<T>
array.Remove(11.0d);
Assert.AreEqual(new[]{0.0,10.0},array);
}
示例6: PerformanceRemoveValues
public void PerformanceRemoveValues()
{
IMultiDimensionalArray<double> array = new MultiDimensionalArray<double>();
const int valuesToRemove = 200000;
var values = Enumerable.Range(1, valuesToRemove).Select(Convert.ToDouble).ToArray();
array.AddRange(values);
TestHelper.AssertIsFasterThan(95000, () => values.ForEach(d => array.Remove(d))); //too slow
}
示例7: ReadOnlyRemove
public void ReadOnlyRemove()
{
var array = new MultiDimensionalArray(true, false, 1, new int[1]);
array.Remove(1);
}