1.什么是函数?
定义在类中具有特定功能的一段独立小程序,函数也成为方法。
函数的格式:
修饰符 返回值类型 函数名 (参数类型 形式参数1;参数类型 形式参数1;……){
执行语句;
return 返回值;
}
名词解释:
修饰符:public static(现阶段都是这个)
返回值类型:程序最终的返回值结果类型,若没有返回值则为void。
函数名:其实就是函数的名称,方便调用。
参数类型:就是数据类型。
形式参数:就收实际参数的变量。
return 返回值:在哪里调用函数,return就把返回值带回哪里。
注意:A:函数与函数是平级关系,不能嵌套使用。
B:函数只有在调用的时候才会被执行。
2.函数的调用:(具有明确返回值的调用)
A:单独调用,一般是没有意义的
B:输出调用,可以但是不够好,结果可能用于参与计算。
C:复制调用,首先明确返回值类型是什么,用什么类型的参数接收。
例题:输出5x4的*型矩形
class Flowers {
public static void main(String[] args) {
print(5,4);
}
public static void print(int a ,int b){
for(int i = 0; i < a ; i++ ){
for(int j = 0; j < b ; j++){
System.out.print("*");
}
System.out.println();
}
}
}
3.函数是怎么结束的?
以return关键字结束的。
注意:void类型的函数,都有一个默认的return
4.函数重载:
在同一个类中,函数名相同,参数列表(个数,对应的参数类型)不同。函数重载与返回值类型无关。
注意:形参什么类型,实参就写什么类型,形参的范围可以比实参的范围大。
5.数组:存储多个同种元素类型的容器。
好处:自动给数组中的元素从0开始编号。
格式:
元素类型 [] 数组名 = new 元素类型 [元素个数];
例:int [] arr = new int [5]; new 用来申请内存空间
6.new建立的实例都存放在堆内存中
A:每一个new出来的东西都有地址值,一般是用十六进制表示。
B:每一个实例中的内容都有默认值
整型:0 浮点型:0.0 字符型:'\u0000' 布尔型:false
C:会在不确定的时间被垃圾回收器回收。
7.数组的定义方式:
方式1:
数据类型[] 数组名 = new 数据类型 [长度];
方式2:
数据类型[] 数组名 = new 数据类型 []{元素……};
方式3:
数据类型[] 数组名 = {元素……};
8.数组操作中常见的问题:
A:数组越界异常:ArrayIndexOutOfBoundsException
B:空指针异常:NullPointerException
9.遍历:获取数组中所有元素的操作叫做数组的遍历。
class Flowers {
public static void main(String[] args)
{
int[] arr = {1,3,5,6,7,8,0};
print(arr);
}
public static void print(int[] arr){
for(int i = 0; i < arr.length; i++){
System.out.println(arr[i]);
}
}
}
10.求数组中的最值:
class Flowers {
public static void main(String[] args) {
int[] arr = {1,2,4,5,77,12,23,442,12,-11,-4,0,12};
System.out.println(max(arr));
System.out.println(min(arr));
}
public static int max(int[] arr){
int max = arr[0];
for(int i = 0 ; i < arr.length; i++){
if(max < arr[i]){
max = arr[i];
}
}
return max;
}
public static int min(int[] arr){
int min = arr[0];
for(int i = 0 ; i < arr.length; i++){
if(min > arr[i]){
min = arr[i];
}
}
return min;
}
}
11.二维数组:二维数组的元素其实就是一个个的一维数组。
方式1:数据类型 [][] 数组名 = new 数据类型 [][];
int [][] arr = new int [3][4];
方式2: int [][] arry = new int [3][];
System.out.println(arr[2]);-------输出的值是Null,因为引用数据类型在对内存中的初始值都是NULL;
方式3: int[][] arr = { {0,1,2,3} , {4,5,6} , {7,8} };
12.遍历二维数组:
class Flowers {
public static void main(String[] args)
{
int[][] arr = {{1,3},{5,6,7},{8,0,9,11,23}};
print(arr);
}
public static void print(int[][] arr){
for(int i = 0; i < arr.length; i++){
for(int j = 0; j < arr[i].length; j++){
System.out.print(arr[i][j]+"\t");
}
System.out.println();
}
}
}
|
|