版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34614756/article/details/52863593
一维数组
所谓一维数组,是一组相同类型的数值的集合。数组定义一般有两种方式:int[ ] a; 或者 int a[ ] ;一般用第一种方式。 一维数组的初始化也有两种方式。
一种是先声明再赋值
int[] arrray = new int[5];
array[0] = 1;
array[1] = 2;
array[2] = 3;
array[3] = 4;
array[4] = 5;
另一种是直接声明赋值
int[] array = {1,2,3,4,5};
数组的长度用“数组名.length”获取。
数组填充用“Arrays.fill(数组名.值)”填充,如:
import java.util.Arrays;
public class ArrayFill {
public static void main(String[] args) {
int[] a = new int[5];
int[] b = new int[5];
Arrays.fill(a, 1);
Arrays.fill(b, 2, 4, 20); //给b[2],b[3],赋值20
System.out.print("数组a为:");
for(int i = 0; i < a.length; i++){
System.out.print(a[i]+" ");
}
System.out.println();
System.out.print("数组b为:");
for(int i = 0; i < b.length; i++){
System.out.print(b[i]+" ");
}
}
}
数组赋值用“Arraycopy(数组a,开始复制下标,复制到数组b,开始复制下标,复制长度)”,如:
public class ArrayCopy {
public static void main(String[] args) {
int[] a = {1,2,3,4,5};
int[] b = {45,78,12,30,96};
System.arraycopy(b, 1, a, 0, 3); //将数组b从下标1开始的值赋给a,赋值从a的下标0开始,长度为3
System.out.println("复制后的数组a为:");
for(int i = 0; i < a.length; i++){
System.out.println(a[i]);
}
}
}
数组排序语法为:“Arrays.equals(数组1,数组2);“
数组排序主要包括sort函数排序和冒泡排序。
sort函数排序是升序排序,语法如下:
import java.util.Arrays;
public class ArraySort {
public static void main(String[] args) {
int[] a = {78,56,14,45,23};
int[] b = {15,74,62,31,12};
Arrays.sort(a); //对a进行排序,sort函数默认为升序
Arrays.sort(b, 3, 5); //对b[3],b[4]进行排序
/*Comparator<Integer> c = new Comparator<Integer>() {//这个是将sort函数转换为倒序排序的对象
@Override
public int compare(Integer o1, Integer o2) {
// TODO Auto-generated method stub
return o2-o1;
}
};
Arrays.sort(a,c);*/
System.out.print("排序后的数组a为:");
for(int i = 0; i < a.length; i++){
System.out.print(a[i]+" ");
}
System.out.println();
System.out.print("排序后的数组b为:");
for(int i = 0; i < b.length; i++){
System.out.print(b[i]+" ");
}
}
}
冒泡排序法,代码如下:
public class BubbleSort {
public static void main(String[] args) {
int[] a = {4,25,14,23,78};
int temp;
for(int i = 0; i < a.length; i++){
for(int j = i; j < a.length; j++){
if(a[j]<a[i]){
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
System.out.print("数组a排序后为:");
for(int i = 0; i < a.length; i++){
System.out.print(a[i]+" ");
}
}
}