第五章的主要内容是
数组是具有相同的数据类型的一组数据的集合,例如 球类的集合 足球 蓝球羽毛球等的集合 电器类的集合 有 电视机和洗衣机 电风扇等 在程序设计中可以将这些集合成为数组 数组中的每一个元素具有相同的数据类型 在java中同样将数组看作一个对象虽然基本数据类型不是对象 但是基本数据类型组成的数组确实对象 在程序设计中引入数组可以更有效的管理和处理数据 可根据数组组的维数将数组分为一维数组和二维数组.........
本章节的内容有一维数组和二维数组,初始化二维数组 ,使用二维数组,遍历数组,,填充替换数组元术,对数组进行排序,复制数组,查询数组,,数据排序算法,还有排序法中的直接选择排序,反转排序,本章节的内容需要记得还是比较多的一下都是本章内容的例题,
一维数组
代码
public class JGD1 {//创建类
public static void main(String[] args) {//主方法
// TODO Auto-generated method stub
int day[]=new int[] {31,28,31,30,31,30,31,31,30,31,30,31};//创建并初始化一维数组
for(int i=0;i<12;i++) {//利用循环将信息输出
System.out.println((i+1)+"月有"+day[i]+"天 ");//输出每个月的天数
}
}
}//输出每个月有多少天
//一维数组
代码图
运行结果图
二维数组
代码
package 第五章;
public class JDG5 {//创建类
public static void main(String[] args) {//主方法
// TODO Auto-generated method stub
int a[][] =new int [3][4];//创建一个二维数组
for(int i=0;i<a.length;i++) {//for循环定义一个整型变量i并复制为0
for(int j=0;j<a.length;j++) {//循环遍历数组中的每个元素
System.out.print(a[i][j]);//将数组中的元素输出
}
System.out.println();
}
}
}//二维数组
代码图
运行结果图
填充替换数组元素
代码
package 第五章;
import java.util.Arrays;
public class JDG7 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int arr []=new int [5];//定义一个整型的一维数组
Arrays.fill(arr,8);//使用同一个值对数组进行填充
for(int i=0; i<arr.length;i++) {//循环遍历数组中的元素
System.out.println("第"+i+"个元素是:"+arr[i]);//将数组中的元素依次输出
}
}
}//填充替换数组元素
代码图
运行结果图
遍历数组
代码
package 第五章;
public class JDG6 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int b[][] =new int[][] {{1},{2,3},{4,5,6}};//定义一个二维数组
for(int k=0;k<b.length;k++) {//定义一个整型变量k并赋值为0
for(int c=0;c<b[k].length;c++) {//循环遍历二维数组中的每一个元素
System.out.print(b[k][c]);//将数组中的元素输出
}
System.out.println();//输出空格
}
}
}
//遍历二维数组
代码图
运行结果
对数组进行排序
代码
package 第五章;
import java.util.Arrays;
public class JDG8 {//创建类
public static void main(String[] args) {//主方法
// TODO Auto-generated method stub
int arr[]=new int[] {23,42,12,8};//声明数组
Arrays.sort(arr);//对数组进行排序
for(int i=0;i<arr.length;i++) {//循环遍历排序后的数组
System.out.println(arr[i]);//将排序后的数组中的各个元素输出
}
}
}
代码图
运行结果图
复制数组
代码
package 第五章;
import java.lang.reflect.Array;
import java.util.Arrays;
public class JDG9 {//创建类
public static void main(String[] args) {//主方法
// TODO Auto-generated method stub
int arr[]=new int[] {23,42,12};//定义数组
int newarr[]=Arrays.copyOf(arr,5);//复制数组arr
for(int i = 0;i<newarr.length;i++) {//循环遍历复制后的新数组
System.out.println(newarr[i]);//将新数组输出
}
}
} //复制数组
代码图
运行结果
查询数组
代码
package 第五章;
import java.util.Arrays;
public class JDG10 {//创建类
public static void main(String[] args) {//主方法
// TODO Auto-generated method stub
int ia[] =new int [] {1,8,9,4,5};//定义数组
Arrays.sort(ia);//将数组进行排序
int index =Arrays.binarySearch(ia,4);//查找数组ia中元素4的索引位置
System.out.println("4的索引位置是:"+index);//将索引输出
}
}//查询数组
代码图
运行结果图
直接选择排序法
代码
package 第五章;
public class SelectSort {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[]array= {63,4,24,1,3,15};//创建一个数组
SelectSort sorter=new SelectSort();sorter.sort(array);//创建直接排序类的对象
}
public void sort(int[]array) {//
int index;
for(int i= 1;i<array.length;i++) {
index =0;
for(int j = 1;j<array.length -i;j++) {
if(array[j]>array[index]) {
index = j;
}
}
//交换在位置array.length-i和index(最大值)上的两个数
int temp=array [array.length -i];//把第一元素值保存到临时变量中
array[array.length-i]=array[index];把第二个值保存到第一个元素单元中
array[index]=temp;//把临时变量(第一个元素原值保存到第二个元素单元中)
}
showArray(array);//输出直接选择排序后的数组元素
}
public void showArray(int[]array) {
for(int i :array) {//遍历数组
System.out.print(">"+i);//输出每个数组元素值
}
System.out.println();
}
}
代码图
运行结果
反转排序
代码
package 第五章;
public class ReverseSort {//创建类
public static void main(String[] args) {//主方法
// TODO Auto-generated method stub
int[]array= {10,20,30,40,50,60};//创建反转排序的对象
ReverseSort sorter=new ReverseSort();//调用排序对象方法 将数组反转
sorter.sort(array);
}
public void sort(int[]array) {
System.out.println("数组原有的内容:");//输出排序前的元素
showArray(array);
int temp;
int len = array.length;
for(int i =0;i<len/2;i++) {
temp=array[i];
array[i]=array[len-1-i];
array[len-1-i]=temp;
}
System.out.println("数组反转后内容");//输出排序后的数组元素
showArray(array);
}
public void showArray(int[]array){
for(int i: array) {//遍历数组
System.out.print("\t"+i);//输出每个数组的元素
}
System.out.println();
}
}
代码图
运行结果图