100行代码处,二维数组的遍历!!

package text;

//数组--将一些数据按照线性顺序连续存储的序列,
//数组是效率最高的  存储和访问元素的一种方式

public class Demo1214 {

	public static void main(String[] args) {
		Demo1214 d = new Demo1214();
		d.f1();
		d.function3();
		d.function();
		d.function2();
		//[]里面是数组长度,{}里面是元素
		int t1 = 0;
		// 这种形式不提倡---[]在后面不提倡
		int array11[] = new int[10]; 	// 默认值==0哦
		for (int i = 0; i < array11.length; i++) { //array11.length=10
			System.out.print(array11[i]);
			System.out.print(' ');
		}
		int array21[] = new int[] {1,2,3,4,5,6};
		for (int i = 0; i < array21.length; i++) { //array21.length=6
			System.out.println(array21[i]+"can");
		}
		int array31[] = {4,5,6,7,8};               //这种用法只能在定义时使用
		//		三种初始化赋值方式
		int []array12 = null;		
		
		//这种是::是变量,有对象     只要  new 了,就有对象
		
		
		//这种定义方式    属于   :是变量,没对象
		double[]  array13 ;
		String[]  array14 ;
		Integer[] array16;
		
		//  数组基本特点:
		//1-元素类型遵循数组类型(基本数据类型,引用类型)  int型数组内的元素也只能是int型···
		//2-初始化赋值后数组长度固定不变
		
		//数组变量--"array14、array13", 一定是  引用类型
		//默认值为 null
		System.out.println(array12);
		int[] array15 = new int[] {};	//	有对象,长度为零。
		// System.out.println(array15[0]);  //报错 ,因为长度为零
	}
	void function() {
		//数组是简单的线性序列,所以访问速度快、
		//数组中每个元素拥有一个索引值,通过索引值访问该元素
		//索引值取值范围[0,length)从0开始,到最大长度-1
		int[] array = new int[3];
		array[0] = 100;
		int  t1= array[0];
		System.out.println(t1);
		System.out.println(array.length);
		int i=0;
		while (i<array.length) {
			System.out.println(i+"  "+array[i]);
			i++;
			System.out.println("---------------------");
		}
		for (int k : array) {
			System.out.println(k);
		}
		
	}
	void function2(){
		int[] a1 = new int[] {1,2,3,4,56}; //引用类型 a1 存储元素的地址
		int[] a2 = a1;	//	a2 引用 a1
		int[] a3 = new int[] {1,2,3,4,56};
		//引用类型变量(例如这里的a1、a2、a3),实质上存储的是 指向内存中的一个地址,Java中称之为 引用
		for (int i = 0; i < a1.length; i++) {
			a2[i]++;
			System.out.println(a1[i]+"  "+a2[i]+"  "+a3[i]);
		}
	}
			//	例子:
	void function3() {
		int[] a4 = new int[] {1,2,3,4,5};
		function5(a4);				//a4数组没有变化
		for (int i : a4) {
			System.out.println(i);
		}
		System.out.println("-------下面是 新的  a4-----");
		function4(a4);				//a4发生变化
		for (int i : a4) {
			System.out.println(i);
		}
	}
	void function4(int[] a5) {
		
		for (int i = a5.length-1; i >=0; i--) {
			 a5[i] *=2;
		}
	}
	void function5(int[] a5) {
		a5 = new int[] {7,8,9,10};	//这个重新被定义数组a5改变
		for (int i = a5.length-1; i >=0; i--) {
			 a5[i] *=2;
		}
	}
	/**
	 * 
	 */
	void f1() {
		//数组划分:
		//一维数组,二维数组,多维数组
		//二维数组  :类似于execl, 表格中的信息以行、列的形式组织存储
		int[][] array12;
		int array[][];
		int[]array13[];
		//三种定义方式
		int[][] array31 = new int[2][3];
		int[][] array32 = new int[][] {{2,3,4,5},{1,2,34,4}};
		int[][] array33 = {{1,2,3},{4,5,6}};
		//三种赋值方式
		test(array32);
		System.out.println("=============");
	}
	void test(int [][]array) {
		array[1][2] = 9;
		System.out.println(array[1][2]);
		System.out.println();
		for (int i = 0; i < array.length; i++) {
			for (int j = 0; j < array[i].length; j++) {
				System.out.print(array[i][j]);
				System.out.print(" ");
			}
			System.out.println();
		}
		System.out.println();
		for (int[] p1 : array) {
			for (int p2 : p1) {
				System.out.print(p2);
				System.out.print(" ");
			}
			System.out.println();
		
			//在java中认为  二维数组是  数组的数组
			//即,二维数组是一个特殊的一维数组,其中每个数组又是一个一维数组
		}
	}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值