javaSE基础
1.方法
java中的方法类似与其他语言中的函数,方法是解决一类问题的步骤的有序组合,方法包含于类和对象中。
方法在程序中被创建,声明格式为:
[访问权限修饰符 修饰……] [返回值类型] 方法名(形式参数类型 参数名){
Java语句;……
[return 返回值;]
}
形式参数:在方法被调用时用于接收外界输入的数据。
实参:调用方法时实际传给方法的数据。
返回值:方法在执行完毕后返回给调用它的环境的数据。
返回值类型:事先约定好的返回值的数据类型,如无返回值,必须给出返回值类型void.
public void open(){
System.out.println("开门");
}
public long math(long a ,long b){
return (a>b)?a:b;
}
}
Java语言中使用下述形式调用方法:对象名.方法名(实参列表)
实参的数目、数据类型和次序必须和所调方法声明的形参列表匹配,return语句终止方法的运行并指导要返回的类型。
MethodTest m=new MethodTest();
m.open();
2 return语句
return语句用于从当前执行的方法中退出,返回到调用该方法的语句中处继续执行。
return关键字可以从方法中向调用处返回值的类型,隐式转换数据类型。
return由两种格式:
- return表达式:将表达式的值返回。
- return:不返回任何值,当方法说明中用void声明无返回值时,可以使用这种格式,此类return语句有时可以省略。
特殊用法:
- return可以技术方法的运行,如果方法中有循环语句,也可以使用return结束循环。
- void修饰的方法中可以使用return,但是不能有值。作用是让方法结束。
3 数组
1)数组的基本概念和作用
定义:数组是相同数据类型元素的集合
数组本身是引用数据类型,即对象。但是数组可以存储基本数据类型,也可以存储引用数据类型。
数组是一种线性数据结构,在内存中是连续空间。
2)数组的创建
数组声明的两种形式:
数据类型[]数组名 例:int [] a
数据类型 数组名[] 例:int a []
注:在java中两种声明方式没有任何区别,但是建议使用第一种,避免混淆a的数据类型
int []a,c;//c是数组,d是int型变量
int b[],d;
数组的三种创建方式:
1 声明数组的同时,根据指定的长度分配内存,但数组种元素值都为默认的初始化值。int:0;double:0.0;char:看不见的空格;boolean:false;引用类型:null
int[] ary0 = new int[10]; 数组的长度定义之后就不能再修改。
2 声明数组并分配内存,同时将其初始化。
int[] ary1 = new int[]{1, 2, 3, 4, 5};
3 与前一种一样,但是语法相对的简化
int[] ary2 = {1, 2, 3, 4, 5};
4 如果存储的是引用类型,会存储对象的引用
5 动态创建数组与静态创建数组
1)动态创建数组(没有为元素赋值,可以结合for循环进行赋值)
char[] chAry = new char[10];
2) 静态创建数组,在创建的时候,即为每个元素赋初值。
int[] ary1 = new int[]{1, 2, 3, 4, 5};
6 数组的长度
int [] b1 = new int []{1,2,3,4,5,6,7};
System.out.println(b1.length);
3) 数组的访问与迭代
索引:
- 数组的索引是(编号)从0开始.。
- 索引的数据类型是整型。
- 索引的最大值比数组长度少1.
数组元素的访问:
数组的名字[索引] 例:a[0],a[1]
数组的迭代:
- for循环遍历(区间已知)
int [] b1 = new int []{1,2,3,4,5,6,7};
for(int i=0;i<b1.length;i++){
System.out.println(b1[i]);
}
-
foreach循环(加强for,JDK5以后拥有)
原理:每次从数组中取一个值赋给变量temp,直到遍历结束
int a[]={1,2,3,4,5,6}; for (int temp:a){ System.out.println(temp); }
4)二维数组
二维数组的定义:
int [][]a = {{1,2,3},{1,2,3},{1,2,3}};
二维数组的声明:
int [][]a;
int a2[][];
二维数组的创建
int [][]a = new int[][]{{1,2,3},{1,2,3},{1,2,3}};
int [] [] b = {{1,2,3},{1,2,3},{1,2,3}};
int [][] c = new int[3][5];
二维数组的迭代
int [][] b1 = new int [][]{{1,2},{3,4}};
for(int i =0;i<b1.length;i++){
for(int j =0;j<b1[i].length;j++){
System.out.print(b1[i][j]);