IDE:集成开发环境:
将开发过程中需要使用的各种功能(开发、运行、打包、测试、项目管理、连接……)工具整合为一个统一的软件, IDE
eclipse:
IBM 捐给了开源社区(eclipse基金会)。
包:package:
java为了管理源码,使用了文件夹隔离不同的java文件,这些文件夹就可以被称为包
包的目的:
管理项目、管理代码
防止冲突
包的创建,约定俗成的规则
公司域名倒着写.项目名称.模块功能
com.baidu.news.filter
二维数组:
二维数组常用语表示表,表中的信息以行和列的形式表示,第一个下标代表元素所在的行,第二个下标代表元素所在的列。
声明二维数组
二维数组可以看做是特殊的一维数组,因此,二维数组有一下几种声明方式:
1.
数组元素类型 数组名字[][];
声明二维数组代码如下:
int a[][];或int[][] a;
2.同一维数组一样,二维数组在声明时也没有分配内存空间,同样需要使用new关键字来分配内存,然后才可以访问每个元素。
例如:
int a[][];
a=new int[3][4]; 表示声明了一个3行4列的二维数组。二维数组常用语表示表,表中的信息以行和列的形式表示,第一个下标代表元素所在的行,第二个下标代表元素所在的列。
或 int a[][]=new int[3][4];
二维数组在声明时可以先分配行,不分配列:int a[][]=new int[3][];
但是,创建二维数组的时候,如果不写‘行’的话,就是错误的写法:
比如:int a[][]=new int[][3]或int a[][]=new int[][],都是错误的写法,编译无法通过。
初始化二维数组:
初始化二维数组有一下几种方式:
1.如果在声明二维数组时并没有指定列数的话,则赋值时列的值得个数不受限制:如下
int a[][]=new int a[3][];
a[0]=new int[]{2,3,5}(表示第一行有三个元素,分别为2,3,5。第一行的第一列值为2,第一行的第二列值为3,第一行的第三列为元素值5);
a[1]=new int[]{3,5};(表示给第二行赋值两个元素值)
a[2]=new nint[]{5,8,21,5};(表示给第三行赋值4个值。)
2.初始化二维数组的第二种方式:()
int a[][]=new int[3][];
a[0]=new int[2];(表示定义行的列数。此处表示,第一行有两列。)
a[0][0]=25,(第一行的第一列的值为25);
a[0][1]=30;(第一行的第二列的值为30);如果超出定义列的长度运行时则会抛出数组下标越界异常。比如:又定义了
a[0][2]=35;(则此时就已经越界了。)
3.初始化二维数组的第三种方式。
int a[][]=new int[3][3];
a[0][0]=30;表示第一行第一列的值为30,
a[0][1]=50;表示第一行第二列的值为50;
a[]0[2]=80;表示第一行第三列的值为80;
a[1]=new int[]{25,30,80};定义第二行个列的值。
4.在声明二维数组的同时就对二维数组进行赋值
int c[][]=new int[][] {{20,30,20},{56},{2}};定义了一个二维数组,有3行,一个大括号表示1行。括号中的元素表示每一行个列的值。
或int c[][]={{20,30,20},{56},{2}};
二维数组需要注意的问题:
在初始化二维数组的时候只定义了数组的行数,比如说 int a[][]=new int[3][],赋值时只是针对第一行进行了赋值:如:a[0]=new int[]{25,60}:遍历数组时就会报空指针异常
如下:
解决方法:1:给定义的所有的行赋值2.或者声明二维数组时把列数定义好:这样就不会出现空指针异常。但,没有赋值的行,行中各列的值都显示为0,因为int数组的默认值为0.代码如下: