using System; using System.Collections; using System.Collections.Generic; namespace ConsoleApplication2 { internal class Program { public static void Main(string[] args) { var li = new ArrayList(); var r = new Random(); while (li.Count < 4) { var next = r.Next(0, 10); if (!li.Contains(next)) { li.Add(next); } } foreach (var e in li) { JPrint(e); } } #region 工具方法 /// <summary> /// 找出子字符串在字符串中的所有索引,"ccc"在"ccccc"中认为只有一个 /// </summary> /// <param name="str"></param> /// <param name="subStr"></param> /// <returns></returns> private static List<int> AllIndexOf(string str, string subStr) { List<int> li = new List<int>(); var i = 0; i = str.IndexOf(subStr, StringComparison.Ordinal); while (i != -1) { li.Add(i); i = str.IndexOf(subStr, i + subStr.Length, StringComparison.Ordinal); } return li; } /// <summary> /// 选择排序 /// </summary> /// <param name="arr"></param> private static void Sort(int[] arr) { for (int i = 0; i < arr.Length - 1; i++) { for (int j = i + 1; j < arr.Length; j++) { if (arr[i] > arr[j]) { Swap(ref arr[i], ref arr[j]); } } } } /// <summary> /// 冒泡排序 /// </summary> /// <param name="arr"></param> private static void BubbleSort(int[] arr) { for (int i = 0; i < arr.Length - 1; i++) { for (int j = 0; j < arr.Length - 1 - i; j++) { if (arr[j] > arr[j + 1]) { Swap(ref arr[j], ref arr[j + 1]); } } } } /// <summary> ///交换两个值 /// </summary> /// <param name="a"></param> /// <param name="b"></param> /// <typeparam name="T"></typeparam> private static void Swap<T>(ref T a, ref T b) { T t = a; a = b; b = t; } private static void Print<T>(T[] arr) { string str = typeof(T) + "["; if (arr.Length != 0) { for (var i = 0; i < arr.Length - 1; i++) { str += arr[i] + ", "; } str += arr[arr.Length - 1]; } str += "]"; Print(str); } private static void JPrint<T>(T[] arr) { string str = typeof(T) + "["; if (arr.Length != 0) { for (var i = 0; i < arr.Length - 1; i++) { str += arr[i] + ", "; } str += arr[arr.Length - 1]; } str += "]"; Print(str); } public static void Print(string obj, params object[] arg) { Console.WriteLine(obj, arg); } public static void JPrint(string obj, params object[] arg) { Console.WriteLine(obj, arg); } public static void Print(object obj) { Console.WriteLine(obj); } public static void JPrint(object obj) { Console.WriteLine(obj); } /// <summary> /// 获得一个int类型的值 /// </summary> /// <returns></returns> public static int GetInt() { int i; while (true) { try { i = Convert.ToInt32(Console.ReadLine()); break; } catch (FormatException e) { Console.WriteLine(e.Message); } } return i; } public static int GetInt2(string str) { while (true) { try { var i = Convert.ToInt32(str); return i; } catch (FormatException e) { Console.WriteLine(e.Message); str = Console.ReadLine(); } } } public static string GetString() { return Console.ReadLine(); } public static double GetDouble() { double i; while (true) { try { i = Convert.ToDouble(Console.ReadLine()); break; } // catch catch (FormatException e) { Console.WriteLine(e.Message); } } return i; } #endregion } }