学习内容:一、.数组的创建及使用
1.数组必须先声明,再分配内存。
数组声明(以int型为例):int a[5];
内存分配:a=new int[5];(各个元素初始值均为0)
二、数组的基本操作
1.填充替换数组元素
语法:fill(数组名称,要替换成为的值);//(静态方法fill()包含于类Arrays中)
或者fill(数组名称,起始替换索引(包括),终止替换索引(不包括),要替换成为的值)
例:“将二维数组第三行元素替换为6”的程序代码
import java.util.Arrays;
import java.util.Scanner;
public class 填充替换数组元素 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
int a[][]=new int[3][4];
int i,j,k=1;
for(i=0;i<a.length;i++) {
for(j=0;j<a[i].length;j++) {
System.out.print("请输入第"+k+"个元素:");
Scanner sc=new Scanner(System.in);
a[i][j]=sc.nextInt();
k++;
}
}
k=1;
for(i=0;i<a.length;i++) {
for(j=0;j<a[i].length;j++) {
System.out.print("第"+k+"个元素为:");
System.out.println(a[i][j]);
k++;
}
}
Arrays.fill(a[2],6);
k=1;
System.out.println("填充替换后为:");
for(i=0;i<a.length;i++) {
for(j=0;j<a[i].length;j++) {
System.out.print("第"+k+"个元素为:");
System.out.println(a[i][j]);
k++;
}
}
}
}
2.对数组进行排序
语法:Arrays.sort(数组名称);
例:“输出数组a中的最大值和最小值”的程序代码
import java.util.Arrays;
public class 数组排序 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
int a[]=new int[]{1,2,3,9,4,6,7,2,1};
int i,k;
k=a.length;//length后没有()
Arrays.sort(a);
for(i=0;i<a.length;i++) {
System.out.println(a[i]);
}
System.out.println("该数组中最小的数为:"+a[0]);
System.out.println("该数组中最大的数为:"+a[k-1]);
}
}
3.复制数组
语法:copyOf(要进行复制的数组,新数组长度)
copyOfRange(要进行复制的数组,开始位置索引,终止位置索引)
例:
import java.util.Arrays;
public class 数组复制 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
int a1[];
int i;
a1=new int[]{1,2,3,4,5};//int[]后面没有‘=’
int a2[]=Arrays.copyOfRange(a1,0,3);//使用方法copyOfRange()
System.out.println("a1的元素为:");
for(i=0;i<a1.length;i++) {
System.out.println(a1[i]);
}
System.out.println("a2的元素为:");
for(i=0;i<a2.length;i++) {
System.out.println(a2[i]);
}
}
}
遇到的问题:1.数组的创建及初始化中,int a[]=new int[]{1,2,3},"int[]"后面不能有"="
明天任务:数组排序算法及类与对象
原文:https://www.cnblogs.com/zyj3955/p/13289365.html