java学习数组初始

数组

数组是采用一组固定的空间,来存储一组类型相同的数据。

数组定义的几种方式:

1

Int [ ] aArray ;

aArray = new int[// 数组大小 ];

2

Int [ ] aArray01 = new int[//数组大小 ];

3

Int [ ] aArray02 = new int[ ] {value1,value02,value03 };

4

Int [ ] aArray03 = { value1,value2,value3};

Demo01

给定一个整数数组,读入一个整数n,如果n在数组中存在,输出下标,不存在则输出-1

public static void main(String[] args) {

      Scanner scanner = new Scanner(System.in);

      int num = scanner.nextInt();

      int[] aArray = { 1, 2, 3, 4, 5, 6 };

      Boolean b = false;

      int m = 0;

      int i = 0;

      for (; i < aArray.length; i++) {

          if (num == aArray[i]) {

             b = true;

             m = i;

          }

      }

      if (b == true) {

          System.out.println(m);

      } else {

          System.out.println(-1);

      }

}

传递方式:

值传递:

数值传递,基本数据类型

引用类型传递:

传递地址

String类型无法修改,final修饰。

数组的排序

冒泡排序:

for (int i = 1; i < aArray.length; i++) {

          for (int j = 0; j < aArray.length - i; j++) {

             if (aArray[j] > aArray[j + 1]) {

                int temp = aArray[j + 1];

                aArray[j + 1] = aArray[j];

                aArray[j] = temp;

             }

          }

    }

Jdk排序:java.util.Arrays.sort(// 数组名);升序

二维数组

使用双下标:

第一个下标:行号

第二个下标:列号

二维数组语法

//先声明、再分配空间

int[][] a;

      a = new int[高维长度][低维长度];

      // 声明并分配空间

      int[][] a1 = new int[高维长度][低维长度];

      //声明并赋值

      int[][] a2 = new int[高维长度][]; // 不规则数组,自行new低位数组

      a2[2] = new int[] { 1 };

      // 声明并赋值

    int[][] a3 = { { 1, 3 }, { 4, 4 }, { 1, 1 }, {}, {}, {}, {} }; // 显示初始化

杨辉三角

 

public static void main(String[] args) {

      Scanner scanner = new Scanner(System.in);

      int deep = scanner.nextInt();

      int yh[][] = new int[deep][deep];

      for (int i = 0; i < yh.length; i++) {

          yh[i][0] = 1;// 每层第一个值为1

          yh[i][i] = 1; // 每层最后一个值为1

          if (i >= 2) { // 从第二层开始

             for (int j = 1; j < yh.length; j++) {

                yh[i][j] = yh[i - 1][j] + yh[i - 1][j - 1];

             }

          }

      }

      for (int i = 0; i < deep; i++) {

          // 遍历数组

          for (int j = 0; j <= i; j++) {

             System.out.print(yh[i][j] + "\t");

          }

          System.out.println();

      }

      }

}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值