这一讲主要讲述Java的数组相关知识,具体分三个部分介绍,
1、Java数组的简介
(1)数组大小固定
(2)数组保存的数据类型相同
具体的代码操作将在下面给出:
package com.csdn;
public class Demo06 {
static void testArray1() {
int[] arr = {1, 2, 3, 4};
// int array[] = {4, 5, 6};
int[] arr2 = new int[5];
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr.length);
// System.out.println(arr[4]); 数组下标和长度之间的关系,数组长是4,最大下标就是3
System.out.println(arr[arr.length-1]);
arr2[0] = 100;
System.out.println(arr2[0]);//自行对数组进行赋值
arr2[0] = 1000;
System.out.println(arr2[0]);
System.out.println(arr2[1]);//没有赋值的就默认为0
}
public static void main(String[] args) {
testArray1();
}
}
2、数组的使用
(1)遍历数组
(2)数组作为参数
(3)数组作为返回值
具体的代码操作将在下面进行展示:
package com.csdn;
public class Demo06 {
//数组的基本构造和元素操作
static void testArray1() {
int[] arr = {1, 2, 3, 4};
// int array[] = {4, 5, 6};
int[] arr2 = new int[5];
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr.length);
// System.out.println(arr[4]); 数组下标和长度之间的关系,数组长是4,最大下标就是3
System.out.println(arr[arr.length-1]);
arr2[0] = 100;
System.out.println(arr2[0]);//自行对数组进行赋值
arr2[0] = 1000;
System.out.println(arr2[0]);
System.out.println(arr2[1]);//没有赋值的就默认为0
}
//数组的遍历
static void testArray2() {
int[] a= {1, 2, 3, 4, 5};
//for each 增强型的数组,a代表数组,i代表数组里面的元素
for (int i : a) {
System.out.print(i + " ");
}
}
//数组作为参数传给一个方法,一定要注意传递参数的类型和方法中数据的类型要一致
static void testArray3(String[] a) {
for (String i : a) {
System.out.println(i);
}
}
//数组作为返回值
static String[] testArray4() {
String[] names = {"tom", "kite", "rose"};
return names;
}
public static void main(String[] args) {
//testArray1();
// testArray2();
// String[] names = {"tom", "kite", "rose"};
// testArray3(names);
String[] s2 = testArray4();
for (String string : s2) {
System.out.println(string);
}
}
}
3、Arrays工具类
(1)sort排序
(2)binarySearch二分查找
具体小编的代码参考如下:
package com.csdn;
import java.util.Arrays;
public class Demo06 {
//数组的基本构造和元素操作
static void testArray1() {
int[] arr = {1, 2, 3, 4};
// int array[] = {4, 5, 6};
int[] arr2 = new int[5];
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr.length);
// System.out.println(arr[4]); 数组下标和长度之间的关系,数组长是4,最大下标就是3
System.out.println(arr[arr.length-1]);
arr2[0] = 100;
System.out.println(arr2[0]);//自行对数组进行赋值
arr2[0] = 1000;
System.out.println(arr2[0]);
System.out.println(arr2[1]);//没有赋值的就默认为0
}
//数组的遍历
static void testArray2() {
int[] a= {1, 2, 3, 4, 5};
//for each 增强型的数组,a代表数组,i代表数组里面的元素
for (int i : a) {
System.out.print(i + " ");
}
}
//数组作为参数传给一个方法,一定要注意传递参数的类型和方法中数据的类型要一致
static void testArray3(String[] a) {
for (String i : a) {
System.out.println(i);
}
}
//数组作为返回值
static String[] testArray4() {
String[] names = {"tom", "kite", "rose"};
return names;
}
static void testArray5() {
int[] a = {8, 6, 4, 9, 2, 5, 1, 3, 10, 7};
Arrays.parallelSort(a);
// System.out.println(a);
for (int i : a) {
System.out.print(i+" ");
}
Arrays.sort(a);//索引查找,二分查找法
int idx = Arrays.binarySearch(a, 7);
System.out.println(idx);
}
public static void main(String[] args) {
//testArray1();
// testArray2();
// String[] names = {"tom", "kite", "rose"};
// testArray3(names);
// String[] s2 = testArray4();
// for (String string : s2) {
// System.out.println(string);
testArray5();
}
}