public void TestRemove() { HashList <int, string> h = new HashList <int, string>(); h.Add(2, "a"); Assert.AreEqual(h.ValueCount, 1); Assert.AreEqual(h.KeyCount, 1); h.Add(4, new List <string>(new string[] { "2", "3", "4", "5" })); Assert.AreEqual(h.ValueCount, 5); Assert.AreEqual(h.KeyCount, 2); Assert.AreEqual(h.Remove(2), true); Assert.AreEqual(h.KeyCount, 1); Assert.AreEqual(h.ValueCount, 4); Assert.AreEqual(h.Remove(2), false); Assert.AreEqual(h.KeyCount, 1); Assert.AreEqual(h.ValueCount, 4); Assert.AreEqual(h.Remove("2"), true); Assert.AreEqual(h.KeyCount, 1); Assert.AreEqual(h.ValueCount, 3); Assert.AreEqual(h.Remove(3, "2"), false); Assert.AreEqual(h.KeyCount, 1); Assert.AreEqual(h.ValueCount, 3); Assert.AreEqual(h.Remove(4, "2"), false); Assert.AreEqual(h.KeyCount, 1); Assert.AreEqual(h.ValueCount, 3); Assert.AreEqual(h.Remove(4, "5"), true); Assert.AreEqual(h.KeyCount, 1); Assert.AreEqual(h.ValueCount, 2); h.Add(4, "4"); Assert.AreEqual(h.KeyCount, 1); Assert.AreEqual(h.ValueCount, 3); h.RemoveAll("4"); Assert.AreEqual(h.KeyCount, 1); Assert.AreEqual(h.ValueCount, 1); }
public void RemoveAllExample() { var whatAnimalEatHashList = new HashList <string, string> { { "dog", "dog food" }, { "dog", "bones" }, { "dog", "cats" }, { "tiger", "people" }, { "tiger", "cats" } }; // HashList contains 5 values Assert.AreEqual(5, whatAnimalEatHashList.ValueCount); // Remove "cats" values whatAnimalEatHashList.RemoveAll("cats"); // HashList contains 3 values because all values matching "cats" have been removed Assert.AreEqual(3, whatAnimalEatHashList.ValueCount); }
public void Simple() { var hashList = new HashList<int, string> {{2, "a"}}; Assert.AreEqual(hashList.ValueCount, 1); Assert.AreEqual(hashList.KeyCount, 1); hashList.Add(4, new List<string>(new[] { "2", "3", "4", "5" })); Assert.AreEqual(hashList.ValueCount, 5); Assert.AreEqual(hashList.KeyCount, 2); Assert.IsTrue(hashList.Remove(2)); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 4); Assert.IsFalse(hashList.Remove(2)); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 4); Assert.IsTrue(hashList.RemoveValue("2")); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 3); Assert.IsFalse(hashList.Remove(3, "2")); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 3); Assert.IsFalse(hashList.Remove(4, "2")); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 3); Assert.IsTrue(hashList.Remove(4, "5")); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 2); hashList.Add(4, "4"); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 3); hashList.RemoveAll("4"); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 1); Assert.IsFalse(hashList.Remove(10)); hashList.Add(4, "5"); hashList.Add(4, "6"); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 3); Assert.IsTrue(hashList.RemoveValue("5")); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 2); Assert.IsFalse(hashList.RemoveValue("5")); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 2); }
public void Simple() { var hashList = new HashList <int, string> { { 2, "a" } }; Assert.AreEqual(hashList.ValueCount, 1); Assert.AreEqual(hashList.KeyCount, 1); hashList.Add(4, new List <string>(new[] { "2", "3", "4", "5" })); Assert.AreEqual(hashList.ValueCount, 5); Assert.AreEqual(hashList.KeyCount, 2); Assert.IsTrue(hashList.Remove(2)); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 4); Assert.IsFalse(hashList.Remove(2)); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 4); Assert.IsTrue(hashList.RemoveValue("2")); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 3); Assert.IsFalse(hashList.Remove(3, "2")); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 3); Assert.IsFalse(hashList.Remove(4, "2")); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 3); Assert.IsTrue(hashList.Remove(4, "5")); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 2); hashList.Add(4, "4"); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 3); hashList.RemoveAll("4"); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 1); Assert.IsFalse(hashList.Remove(10)); hashList.Add(4, "5"); hashList.Add(4, "6"); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 3); Assert.IsTrue(hashList.RemoveValue("5")); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 2); Assert.IsFalse(hashList.RemoveValue("5")); Assert.AreEqual(hashList.KeyCount, 1); Assert.AreEqual(hashList.ValueCount, 2); }
public override bool RemoveEntity(IBroadphaseEntity body) { int count; count = 0; for (int i = 0, length = axis1.Count; i < length; i++) { if (axis1[i].Body == body) { count++; axis1.RemoveAt(i); if (count == 2) { break; } i--; } } count = 0; for (int i = 0, length = axis2.Count; i < length; i++) { if (axis2[i].Body == body) { count++; axis2.RemoveAt(i); if (count == 2) { break; } i--; } } count = 0; for (int i = 0, length = axis3.Count; i < length; i++) { if (axis3[i].Body == body) { count++; axis3.RemoveAt(i); if (count == 2) { break; } i--; } } for (int index = 0, length = fullOverlaps.Count; index < length; index++) { OverlapPair pair = fullOverlaps[index]; if (pair.Entity1 == body || pair.Entity2 == body) { deprecated.Push(pair); } } fullOverlaps.RemoveAll(deprecated); bodyList.Remove(body); return(true); }
public void RemoveAllExample() { var whatAnimalEatHashList = new HashList<string, string> { {"dog", "dog food"}, {"dog", "bones"}, {"dog", "cats"}, {"tiger", "people"}, {"tiger", "cats"} }; // HashList contains 5 values Assert.AreEqual(5, whatAnimalEatHashList.ValueCount); // Remove "cats" values whatAnimalEatHashList.RemoveAll("cats"); // HashList contains 3 values because all values matching "cats" have been removed Assert.AreEqual(3, whatAnimalEatHashList.ValueCount); }