日期:2014-05-18 浏览次数:21187 次
static void Main(string[] args) { int[] intArray = { 1, 3, 7, 12, 12, 6, 1, 8 }; MyClass max = new MyClass(intArray[0]); MyClass min = new MyClass(intArray[0]); for (int i = 0; i < intArray.Length; i++) { int j = intArray[i]; if (j > max.Value) { max.Value = j; max.Indexes.Clear(); max.Indexes.Add(i); } else if (j < min.Value) { min.Value = j; min.Indexes.Clear(); min.Indexes.Add(i); } else if (j == max.Value) max.Indexes.Add(i); else if (j == min.Value) min.Indexes.Add(i); } Console.WriteLine("最大值为:{0},索引为:", max.Value); foreach (int i in max.Indexes) Console.Write("{0} ", i); Console.WriteLine(); Console.WriteLine("最小值为:{0},索引为:", min.Value); foreach (int i in min.Indexes) Console.Write("{0} ", i); } class MyClass { private int value; public int Value { get { return value; } set { this.value = value; } } private List<int> indexes; public List<int> Indexes { get { return indexes; } set { indexes = value; } } public MyClass(int value) { this.value = value; indexes = new List<int>(); indexes.Add(0); } } /* 输出: 最大值为:12,索引为: 3 4 最小值为:1,索引为: 0 6 */