1.什么是数组
数组是相同数据类型的数据按照顺序组成的一种引用数据类型
2.数据的声明
语法格式:
数据类型[] 数组名;
数据类型 数组名[];
Int[] myIntArray;
Int myIntArray[];
char[] ch;
String[] strArray;
3.数组的创建
语法格式一:先声明后创建
数据类型[] 数组名;
数组名=new 数据类型[数组长度];
Int[] arr;
arr=new int[10];
创建一个程度是10的整型数组
语法格式二:声明的同时创建数组
数据类型[] 数组名=new数据类型[数组长度];
int[] arr=new int[10];
创建长度为10的整型数组arr
注意:数组长度必须指定
4.数组在内存中的存储
数组在内存中分配连续的内存空间
Int[] a=new int[5];
5.数组的初始化
声明数组的同时给数组赋值就是数组的初始化
例:
Int[] arr={1,2,3,4,5,6,7,8,9,10};
数组的长度就是初始化时所给数组元素的个数
6.数组元素的引用
语法格式:
数组名[下标];
注意下标是从0开始的
7.数组长度
Int[] a={1,2,3,4,5,6,7,8,9,10};
属性length表示数组的长度,如a.length
代码:
package com.imooc.array;
public class ArrayDemo {
public static void main(String[] args){
//声明一个整型数组
int[] intArray;
//声明一个字符串类型的数组
String strArray[];
//创建数组
intArray=new int[5];
strArray=new String[10];
//声明数组的同时进行创建
float[] floatArray=new float[4];
//初始化数组
char[] ch={'a','b','c','d'};
System.out.println("ch数组长度是"+ch.length);
System.out.println("intArray数组的第2个元素为:"+intArray[1]);
System.out.println("strArray数组的第5个元素为:"+strArray[4]);
System.out.println("floatArray数组的最后一个元素为:"+floatArray[floatArray.length-1]);
//循环为整数数组赋值
for(int i=0;i<=4;i++){
intArray[i]=i+1;
}
//循环输出整型数组中的元素
System.out.println("整型数组intArray的元素为:");
for(int i=0;i<=4;i++){
System.out.print(intArray[i]+" ");
}
}
}
代码:
package com.imooc.array;
import java.util.Scanner;
public class ArrayDemo1 {
public static void main(String[] args){
//求整型数组的累加和
//定义整型数组
int[] a=new int[5];
Scanner sc=new Scanner(System.in);
//从键盘接受数据,为数组元素赋值
for(int i=0;iout.println("请输入第"+(i+1)+"个元素:");
a[i]=sc.nextInt();
}
System.out.println("数组元素的内容为:");
for(int i=0;iout.print(a[i]+" ");
}
//求数组元素的累加和
int sum=0;
for(int i=0;iout.println();
System.out.println("数组元素的累加和为:"+sum);
}
}
代码:
package com.imooc.array;
public class ArrayDemo2 {
public static void main(String[] args){
//求数组元素的最大值
int[] a={100,23,99999,67,99};
int max=a[0];
for(int i=1;iif(maxout.println("数组元素最大值为:"+max);
}
}
8.增强型for循环
又叫foreach循环
foreach循环应用:
int[] arr={1,2,3,4,5};
for(int n:arr)
System.out.println(n);
代码:
package com.imooc.array;
public class ArrayDemo3 {
public static void main(String[] args){
//使用增强型for循环输出数组内容
int[] a={1,2,3,4,5,};
for(int n:a){
System.out.print(n+" ");
}
}
}
9.变量交换
Int a=3,b=5;
Int temp;
temp=a;a=b;b=temp;
10.冒泡排序
代码:
package com.imooc.array;
public class SortDemo {
public static void main(String[] args){
//冒泡排序
int[] a={34,53,12,32,56,17};
System.out.println("排序的数组为:");
for(int n:a){
System.out.print(n+" ");
}
System.out.println();
int temp;
for(int i=0;i<(a.length-1);i++){
//内重循环控住每趟排序
for(int j=0;j1;j++){
if(a[j]>a[j+1]){
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
System.out.println("排序后数组为:");
for(int n:a){
System.out.print(n+" ");
}
}
}