一维数组

数组的概述
为什么使用数组
定义30个学生存储学生信息

学生的成绩排序
学生1 学生2 学生3 学生4 .。。。。。。 学生30
stu1…………………………………………………………………stu30

数组是相同类型的数据按照顺序组成的一种引用数据类型
数据类型:
•基本数据类型
•引用数据类型
•类
•接口
•数组

学习的内容:
•一维数组
•声明
•创建
•初始化
•元素的引用
•长度
•数组的应用

数组的语法格式
数据类型[] 数组名;
命名规则:数组名也是标识符,满足标识符的命名规则,而且如果一个单词就都是小写字母。如果是多个单词组成,从第二个单词开始,首字母都大写

变量的声明的语法格式
数据类型 变量名;

数组的声明
数据类型[] 数组名; Java定义的方式
数据类型 数组名[]; 也是可以的,但是C语言里面用的是第二种方式

int[] myIntArray; 整型数组
int myIntArray[];

char[] ch; 字符数组
String[] strArray;字符串数组 对象数组

数组的创建
语法格式1:先声明后创建
数据类型[] 数组名;
数组名 = new 数据类型[数组长度];

int[] arr;
arr = new int[10];
创建一个长度为10的整型数组

举例子:int[] arr = new int[];错的,因为必须声明数组的长度
double[] demo = new double[5]; 对的

语法格式2:声明的同时创建数组
数据类型[] 数组名 = new 数据类型[数组长度];
int[] arr = new int[10];
创建一个长度为10的整型数组

数组在内存中 的存储时如何进行的?
首先整型的数组的默认值都是0;数组名指向数组的第一个元素

局部变量和数组的默认值问题
•之前和大家说过的局部变量方法的内部,他是没有默认值的
•而数组是有默认值的,数组是对象

数组的初始化
声明数组的同时给数组赋值,叫做数组的初始化
int[] arr = {1,2,3,4,5,6,7};
数组的长度就初始化所给数组元素的个数

数组的引用
语法格式:
数组名[下标]
注意:下标是从0开始的

例子:
int[] a = {1,2,3,4,5,6,7,8,9,10};
1 2 3 4 5 6 7 8 9 10
a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9]

数组的长度:int[] a = {1,2,3,4,5,6,7,8,9,10};
属性length表示数组的长度,如a.length;

如果取值的下标索引越界了,前面还是输出的但是后面胡报错
•我们编写代码保存的过程就是javac的编译过程,并没有报错。
•但是执行run as 时候报错,这是运行时报的错叫做运行时异常

案例:求数组元素的累加和
1、定义整形数组
2、从键盘接受数据,为数组元素赋值
3、求数组的累加和

案例:求数组元素的最大值

增强型for循环
又叫foreach循环
int[] arr1 = {1,2,3,4,5};//int n
for(int n:arr1){
System.out.println(n);
}

如何将2个变量值进行互换

int a = 3,b = 5;
int temp;
temp=a;a = b;b=temp;

上述这个互换值问题得这个代码一定要记住了,笔试面试经常问。

冒泡排序
案例:实现对一组整数按照由小到大得顺序进行排序
34 53 12 32 56 17
我们需要将相邻得2个数进行比较,将最大的值放置到最后,次大得值放置到倒数第二个,以此类推。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值