Java数组基础+进阶

数组概念:
数组就是存储同一种数据类型的多个元素的集合。
掌握数组的特点:
1、数组的长度一旦确定,就不可以再改变;
2、数组中的每一个元素都有编号,从0开始,最大编号是数组的长度—1;
编号的专业叫法:索引
3、数组只可以存储相同数据类型的元素;
4、数组可以储存相同的元素
定义格式
A:数据类型[] 数组名;
B:数据类型 数组名[];
推荐是用A方式,B方法就忘了吧。
但是要能看懂
数组的初始化
A:动态初始化
只给长度,系统给出默认值
举例:int[] arr = new int[3];
B:静态初始化
给出值,系统决定长度
举例:int[] arr = new int[]{1,2,3};
简化版:int[] arr = {1,2,3};
数组的常见操作(必须掌握):
A:遍历

		方式1:
			
			public static void printArray(int[] arr) {
				for(int x=0; x

B:最值

		     //最大值:
			public static int getMax(int[] arr) {
				int max = arr[0];
				
				for(int x=1; x max) {
						max = arr[x];
					}
				}
				
				return max;
			}
			
		    //最小值:
			public static int getMin(int[] arr) {
				int min = arr[0];
				
				for(int x=1; x

C:逆序

	方式1:
		
			public static void reverse(int[] arr) {
				for(int x=0; x

D:查表

			public static String getString(String[] strArray,int index) {
				return strArray[index];
			}

E:基本查找

		方式1:

			public static int getIndex(int[] arr,int value) {
				for(int x=0; x

数组进阶操作(必须掌握):
动态数组的练习:
例题1,动态数组实现下列功能:
先初始化一个长度为10的数组,然后进行一下操作;
1、指定位置 插入元素
2、指定位置 删除元素
3、指定位置 追加元素
4、指定位置 修改元素
代码实现:

package shu.zu;

import java.util.Scanner;

public class Text_BianHuan {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[] array = new int[10];
		for (int index = 0; index < array.length; index++) {
			System.out.print("请输入第" + index + "个元素:");
			array[index] = sc.nextInt();
		}
			System.out.println("数组初始化成功!");
			System.out.print("数组array={");
			for(int i=0;i i) {
						array2[i] = array[i];
					} else if (i == chaIndex) {
						array2[i] = value;
					} else {
						array2[i] = array[i - 1];
					}
				}
				array = array2;
				System.out.println("插入成功!");
				break;
			case 2:
				System.out.print("请输入要删除元素的索引:");
				int index = sc.nextInt();
				int[] array1 = new int[array.length - 1];
				for (int i = 0; i < array1.length; i++) {
					if (i < index) {
						array1[i] = array[i];
					} else {
						array1[i] = array[i + 1];
					}
				}
				array = array1;
				System.out.println("删除成功!");
				break;
			case 3:
				System.out.print("请输入要删修改元素的索引:");
				int xiuIndex = sc.nextInt();
				System.out.print("请输入要修改后元素的值:");
				int value1 = sc.nextInt();
				array[xiuIndex] = value1;
				System.out.println("修改成功!");
				break;
			case 4:
				for(int i=0;i

例题2,去掉数组中重复的元素;
数组 array = { 4, 3, 35, 3, 2, 4, 6, 3 }
解析:利用boolean类型的数组,通过排序比较方法改变boolean数组元素值,再通过临时数组接收去掉重复元素的数组,然后在赋值给原数组,通过赋值地址值的方式;
代码实现:

package day.shuzu;

public class Text {
	public static void main(String[] args) {
		int[] array = { 4, 3, 35, 3, 2, 4, 6, 3 };
		boolean[] flag = new boolean[array.length];
		for (int index = 0; index < array.length; index++) {
			for (int i = index + 1; i < array.length; i++) {
				if (array[index] == array[i]) {
					flag[i] = true;
				}
			}
		}
		int sum = 0;
		for (int index = 0; index < flag.length; index++) {
			if (flag[index] == false) {
				sum += 1;
			}
		}
		int[] array1 = new int[sum];
		int a = 0;
		for (int index = 0; index < flag.length; index++) {
			if (flag[index] == false) {
				array1[a] = array[index];
				a++;
			}
		}
		for (int index = 0; index < array1.length; index++) {
			System.out.print(array1[index] + ",");
		}
	}
}

你可能感兴趣的:(Java基础,java)