1.数组
1.1一维数组
输出数组中的数字:
int[] arr=new int[5]; //数组定义,并初始化为0;
namespace 学习c_shap
{
class Program
{
static void Main(string[] args)
{
int[] arr = { 1, 2, 3, 4, 5 }; //定义数组,并初始化;
for (int i=4;i>=0;i--)
{
Console.WriteLine(arr[i]);
}
Console.ReadLine();
}
}
}
1.1二维数组:
数组的声明:
type[,] arryName;
数组初始化:
int[,] arr=new int[2,2]{{1,2},{2,3}};
冒泡法对数组进行排序:
static void Main(string[] args)
{
int t;
int[] arr= new int[5];
for (int i=0;i<arr.Length ;i++) //循环输入数组数值;
{
Console.Write("请输入地{0}个值:",i+1);
arr[i]=int.Parse( Console.ReadLine()); //由于Console.Read()函数只能输入字符串,因此在想要输入数字的时候应该转换数据类型;
}
//显示数组元素;
for(int i=0;i<arr.Length ;i++)
{
Console.Write(arr[i]+" ");
}
Console.WriteLine();
/*
冒泡发排序原理:大循环每循环一次会将数组中的最大的值排到数组末尾,因此第二次循环是不必再处理最后一个值,因此内循环的循环结束条件为 j < arr.Length-i-1,而内循环没循环一次是将相邻两个数字中大的排在后面,小的书排在前面。
*/
for (int i=0;i<arr.Length -1;i++) //大循环将最大的数排到末尾
{
for (int j = 0; j < arr.Length-i-1; j++) //arr.Length,获取数组长度。
{
if (arr[j] > arr[j + 1])
{
t = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = t;
}
}
}
foreach (int number in arr)
{
Console.Write(number + " "); //黑框显示数组元素;
}
Console.ReadLine();
}
1.3ArrayList类
ArrayList类相当于一个高级的动态数组。
与数组的不同:
- 数组的容量是固定的,而ArrayList的容量是可以扩充的;
- ArrayList只能是一维形式,而数组可以是多维德;
- ArrayList提供添加、删除和插入某一范围元素的方法,但在数组中,只能一次获取或者设置一个元素的值。
ArrayList的定义和初始化:
ArrayList LIST= new ArrayList();
for(int i=0;i<10;i++) //为ArrayList添加10个int元素。
{
LIST.Add(i);
}
//直接用数组赋值;
int[] a1 = new int[] { 1,2,3,4,5,6};
ArrayList a2 = new ArrayList(a1);
ArrayList元素的添加:
1.add方法:
int[] a1 = new int[] { 1,2,3,4,5,6};
ArrayList a2 = new ArrayList(a1);
a2.Add(7);
2.insert方法:
int[] a1 = new int[] { 1,2,3,4,5,6};
ArrayList a2 = new ArrayList(a1);
a2.Insert(3, 7); //在第三个位置处插入值7;
ArrayList元素的删除:
a2.Clear(); //清除ArrayList 中的所有元素;
a2.Remove(3) //移除第一个与3匹配的元素;(也就a2中第一个等于3的元素)
a2.RemoveAt(3) //移除索引为3的元素;
a2.Contion(2) //a2中是否有2这个元素。有的话返回true;
1.4 Hashtable(哈希表)
哈希表,表示键/值对的集合,这些键/值对根据键的哈希代码进行组织。他的每一个元素都是一个存储在DictionaryEntry对象中的键/值对。键不能为空引用但值可以。
Hashtable hashtable = new Hashtable();
hashtable.Add("id", "BH0001");
hashtable.Add("name", "TN");
hashtable.Add("sex", "男");
hashtable.Clear(); //移除哈希表中的元素;
2.方法
2.1方法的分类:
方法可以分为静态方法和非静态方法,以是否含有static修饰符来区分;静态方法不对特定的实例进行操作,在静态方法中引用this会出现错误。
2.2方法的重载:
public int ADD(int a,int b)
{
return a + b;
}
public static double ADD(int a, double b)
{
return a + b;
}
public int ADD(int a, int b,int c)
{
return a + b + c;
}