Java 数组基础定义

/**
 * 数组:具有相同数据类型的元素的集合,它是一个容器:[] 
 * 元素:每一个数据就是一个元素 
 **/ 数组中元素的个数:长度(length) 数组分为:一维数组(最常用)
一维数组的声明:数组类型 数组名[];     数组类型[] 数组名;
              int a[];             int[] a;
二维数组的声明:数组类型 数组名[][];    数组类型[][] 数组名;    数组类型[] 数组名[];
              int a[][];           int[][] a;            int[] a[];
一维数组的创建:数组名 = new 数据元素类型[元素个数];
                 a = new int[i];
二维数组的创建:数组名 = new 数据元素类型[行数][列数];    数组名 = new 数据元素类型[行数][];
                 a = new int[i][];    // --必须声明行数--//
一维数组的初始化:
    动态初始化:数组名[元素下标] = 元素值;
                        a[i]=num;    //...i从0开始...//
    静态初始化:数组类型 数组名[] = {元素1,元素2,...};    数组类型 数组名[] = new 数据类型[]{元素1,元素2,...};
                      int a[] = {1,2,...};                  int a[] = new int[]{1,2,...};
二维数组的初始化:
    动态初始化:int[][] a = new int[3][];                
              a[0] = new int[2];
              a[0] = new int[2];
              a[0] = new int[2];
              a[0][0] = 1;
              a[0][1] = 2;  
              ...
    静态初始化:数组类型 数组名[][] = {{元素11,元素12,...},{元素21,元素22,...}};    
                                     int a[][] = {{1,2,3},{4,5},{7}};
                      数组类型 数组名[][] = new 数据类型[][]{{元素11,元素12,...},{元素21,元素22,...}};
                                     int a[][] = new int[][]{{1,2,3},{4,5},{7}};
//-----------------------------------------------------------------------------------------------------------//
public class ArrayDemo {
	public static int position(int number,int[] array){
	int position=0 ;
		for(int i = 0;i<array.length;i++){
			if(number==array[i]){
				position=i+1;
				System.out.println("你要查找的數字位置在第"+position+"位");
			}	
		}return position;
		
	}
	public static void main(String[] args) {
		int[] array = { 2, 4, 5, 5, 8, 9}
		Scanner input = new Scanner(System.in);
		System.out.print("输入您要找的数:");
		int number = input.nextInt();
		int position =ArrayDemo.position(number, array);
		if(position==0){
			System.err.println("沒有您要查找的數字");
		}
public class ArrayDemo {
	public static boolean check(int a, int[] array) {
		boolean isRight = false;
		for (int i = 0; i < array.length; i++) {
			if (a == array[i]) {
				isRight = true;
			}
		}
		return isRight;
	}

	public static void main(String[] args) {
		 // 已知一个数组{2,1,4,5,6,4,64,46};要求从控制台输入一个书,判断这个数是否在数组中存在
		 int[] array = { 2, 4, 5, 5, 8, 9 };
		
		 Scanner input = new Scanner(System.in);
		 System.out.print("输入您要找的数:");
		 int number = input.nextInt();
		 boolean isRight = ArrayDemo.check(number, array);
		 if (isRight) {
		 System.out.println("输入的数字存在");
		 }else{
		 System.out.println("输入的数字不存在");
		 }

		// 声明一个一维数组
		int[] a;//声明一维数组
		// 数据类型[] 变量名 = new 数据类型[];注意:数组的长度是固定的不可以改变;
		int[] array = new int[20];//创建一个数组并进行初始化
		// 如何给数组元素赋值 变量名[下标] 下标是从0开始的
		array[0] = 1;
		array[1] = 12;
		array[9] = 98;
		/**
		 * Exception(异常) in thread "main"
		 * java.lang.ArrayIndexOutOfBoundsException: 10 at
		 * HomeWork.ArrayDemo.main(ArrayDemo.java:24)
		 */数据越界异常
		System.out.println(array[10]);

		// 如何将数组中的所有元素一次输出(遍历数组)数组的长度如何获取:数组名.length
		for(int i = 0;i<array.length;i++){
		System.out.println(array[i]);
		}
//二维数组的遍历:
        int a[][]={{1},{4,5,6},{7,8}};
        for(int i = 0; i<a.length; i++) {
            for(int j = 0; j<a[i].length; j++) {
                System.out.println(a[i][j]+" ");
            }
            System.out.println();
        }
// 数组的静态初始化(直接赋值):
        String[] array1 = {"tom","jones","zhangsan","lisi","abc"};
        for(int i = 0;i<array1.length;i++){
        		System.out.println(array1[i]);
        	}
        int[] array2 = new int[]{2,34,1,5,7,56,112};
        for(int i = 0;i<array2.length;i++){
        		System.out.println(array2[i]);
        }
        	int [] array3 = new int[10];
        	Scanner input = new Scanner(System.in);
        	System.out.println("请输入");
        	for(int i = 0;i<array3.length;i++){
        		array3[i] =input.nextInt();
        	}
        	for(int i = 0;i<array3.length;i++){
        		System.out.println(array3[i]);
        	}     		
        }
}



/**
 * 方法参数的类型以及返回值的类型
 * 1.可以是基本数据类型
 * 2.引用类型(String 数组)
 * @author Administrator
 *
 */
public class ArrayDemo1 {
	public static void A(int[] a){
		for(int i = 0;i<a.length;i++){
			System.out.println(a[i]);
		}
	}
	public static void B(String name){
		System.out.println(name);
	}
	public static void C(String[] arg1){
		for(int i = 0;i<arg1.length;i++){
			System.out.println(arg1[i]);
		}
	}
	public static void main(String[] args) {
		int[] array = {1,2,3,4,5,6};
		String[] array1 = {"aaa","bbb","ccc"};
		char[] c={'A','B','C'};
		ArrayDemo1.A(array);
		ArrayDemo1.B("tom");
		ArrayDemo1.C(array1);
		System.out.println(c);
	}

}

public class ArrayDemo2 {
	public static void C(double[] d) {
		for (int i = 0; i < d.length; i++) {
			System.out.println(d[i]);
		}
	}

	public static String[] D(String[] ss) {
		return ss;
	}

	public static void main(String[] args) {
		double[] dd = { 1.34, 3.56, 1.34 };
		double[] dd1 = new double[] { 2.31, 3.56, 2.15 };
		double[] dd2 = new double[10];
		dd2[0] = 3.15;
		dd2[1] = 2.56;
		ArrayDemo2.C(dd2);
		
		String[] ss ={"tom","abc","def"};
		String[] s1 =ArrayDemo2.D(ss);
		for(int i = 0;i<s1.length;i++){
		System.out.println(s1[i]);
		}
		
	}
}
/**
 * 排序:[3,1,56,23,12,8,16,4]
 * 由小到大输出排序后的数组
 * 思路:
 * 1.相邻的两个元素进行比较(控制下标) 判断:如何array[i]>array[i+1]
 * 
 * @author Administrator
 *
 */
public class SortDemo323 {
	public static void main(String[] args) {
		//二维数组的定义
		int[][] array_m = new int[4][4];
		array_m[0][0] = 12;
		array_m[1][0] = 13;
		array_m[2][0] = 14;
		array_m[3][0] = 15;
		System.out.println(array_m[2][3]);
		
		int a[][] = {{1},{4,5,6},{7,8}};
		for(int i = 0; i < a.length;i++){
			for(int j = 0;j<a[i].length;j++){
				System.out.println(a[i][j]+" ");
			}
		}
	}
}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值