Mercurial > hg > ucis.core
comparison Util/ArrayUtil.cs @ 1:28dc7d535036
Small improvements, introduced PacketStream
author | Ivo Smits <Ivo@UCIS.nl> |
---|---|
date | Mon, 07 Jan 2013 16:43:28 +0100 |
parents | 3ab940a0c7a0 |
children | 9533a87363f3 |
comparison
equal
deleted
inserted
replaced
0:3ab940a0c7a0 | 1:28dc7d535036 |
---|---|
82 if (a == null || b == null) return false; | 82 if (a == null || b == null) return false; |
83 if (a.Length != b.Length) return false; | 83 if (a.Length != b.Length) return false; |
84 for (int i = 0; i < a.Length; i++) if (a[i] != b[i]) return false; | 84 for (int i = 0; i < a.Length; i++) if (a[i] != b[i]) return false; |
85 return true; | 85 return true; |
86 } | 86 } |
87 public static int GetHashCode<T>(T[] array) { | |
88 int h = 0; | |
89 foreach (T v in array) h ^= v.GetHashCode(); | |
90 return h; | |
91 } | |
92 public static void Add<T>(ref T[] array, T item) { | |
93 if (array == null) { | |
94 array = new T[] { item }; | |
95 } else { | |
96 int index = array.Length; | |
97 Array.Resize(ref array, index + 1); | |
98 array[index] = item; | |
99 } | |
100 } | |
101 public static void AddUnique<T>(ref T[] array, T item) { | |
102 if (Array.IndexOf(array, item) != -1) return; | |
103 Add(ref array, item); | |
104 } | |
87 } | 105 } |
88 } | 106 } |