2023-04-03
自我提升
00

怎么存储⼀个⼈的年龄?

c#
int age = 30;

怎么存储10个⼈的年龄?

c#
int age1 = 12; int age2 = 12; int age3 = 12; int age4 = 12; int age5 = 12; int age6 = 12; int age7 = 12; int age8 = 12; int age9 = 12; int age10 = 12;

解决办法?

1、定义10个变量
2、使⽤⼀个数组

数组⽤来存储同种类型的⼤量数据。

数组的声明 类型[] 数组名;
数组名遵守变量名命名规则

c#
double[] temp1; char[] temp2; string[] temp3;

数组的赋值

c#
int[] ages={34,2,3,2,2,45} ages=new int[10] ages=new int[]{3,4,12,312,321} ages=new int[10]{3,4,12,312,321} //⻓度和个数要对应

数组的使⽤(修改和读取)
通过索引(下标),索引从0开始。
可以把数组想象⻋⼀个⽕⻋,⼀个⻋厢⾥⾯存储的就是数据元素。
age[index]

image.png

c#
修改: int[] ages = { 34, 12, 56, 67, 2, 3, 4, 6, 6, 2 }; ages[10] = 20; Console.Write(ages[10]); 220 读取: // 声明int类型的数组 int[] ages = { 34, 12, 56, 67, 2, 3, 4, 6, 6, 2 }; // 数组的数据有下标 0 1 2 3 4 5 6 7 8 9(索引) // 数组名[索引] Console.WriteLine(ages[7]); = 6

注意

1、不能访问索引不存在的值

c#
ages = new int[4] { 12, 1, 2, 4 }; Console.Write(ages[7]);

❓练习
1、声明⼀个int的数组,数组⼤⼩为9
2、声明⼀个char数组,数组⻓度为20
3、声明⼀个float数组,数组⻓度为5
4、声明⼀个字符串数组,数组⻓度为8

c#
int[] intArray = new int[9];//0 char[] charArray = new char[20]; float[] floatArray = new float[5]; string[] stringArray = new string[8];

✋判断对错

c#
1: int[] ar; ar={1,2,3}; X 赋值需在同一行 2: int[] ar = {2,3,4}; V 3: int[] ar = new int[4]{1,2,3} X 不能访问索引不存在的值

❓怎么遍历⼀个数组?(正序和倒序)
遍历就是取得数组中的每⼀个值

c#
//0-9 int[] ages = { 34, 12, 56, 67, 2, 3, 4, 6, 6, 2 }; Console.Write(ages.Length); for(int i = 0; i < ages.Length; i++) { Console.Write(ages[i] + " "); }

遍历索引 - 通过索引访问元素

  • 通过for和while遍历⼀个数组
c#
int[] ages = { 34, 12, 56, 67, 2, 3, 4, 6, 6, 2 }; for (int i = 0; i < 10; i++) //正序 { Console.Write(ages[i] + " "); } for (int i = 9; i >= 0; i--) //倒序 { Console.Write(ages[i] + " "); } //34 12 56 67 2 3 4 6 6 2 //2 6 6 4 3 2 67 56 12 34
c#
int[] ages = { 34, 12, 56, 67, 2, 3, 4, 6, 6, 2 }; int i = 0; while (i < 10) { Console.Write(ages[i] + " "); i++; } //34 12 56 67 2 3 4 6 6 2
  • 通过foreach遍历⼀个数组 (只能正序
c#
int[] ages = { 34, 12, 56, 67, 2, 3, 4, 6, 6, 2 }; foreach(int temp in ages){ Console.Write(temp + " "); } //34 12 56 67 2 3 4 6 6 2

本文作者:千纸鹤

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!

正在翻译,请稍后...