《java开发实战经典》李兴华——C4. 数组与方法

一、数组

一维数组

1.数组创建:

创建一个可供使用的数组要两步:声明+分配内存

方式一:数组类型   数组名称 [ ]  = null;// 声明数组。

               数组名称 = new 数组类型 [数组长度];//分配内存。

               注:(1)数组内所有元素类型一致

                      (2)声明数组时:"数组名称" 和 "[ ]" 的位置可以互换。

                      (3)声明数组时,在栈中分配一块内存,存数组名称。

                              第二步new时,在堆中分配相应长度的内存块存储数组元素,并把该内存空间的地址赋给栈内存中的数组名                                       称变量。

                              只开辟栈空间的数组是无法使用的,必须有指向的堆内存空间才行。

                      (4)声明数组时,赋值为null,是因为数组是引用数据类型,引用数据类型的默认值是null。

方式二: 数组类型  数组名称 [ ]  = new 数据类型[数组长度];

2.数组元素访问:数组名称[下标]。  

                            注:数组下标从0开始,到 数组名称.length为止

3.数组的静态初始化:数组类型  数组名称[ ] = {初始值1,初始值2,...初始值n}

4.几种排序算法:冒泡排序、选择排序、快速排序、反转排序……

   当然,java中提供了数组排序的方法:java.util.Arrays.sort(方法名)

二维数组

1.数组创建:

   方式一:

               数组类型  数组名称 [ ] [ ];

               数组名称 = new 数组类型 [行数] [列数];

   方式二:

               数组类型  数组名称 [ ] [ ] = new 数组类型 [行数] [列数];

2.静态初始化:

   数组类型  数组名称[ ] [ ] = new 数组类型{ {第0行初始值},{第1行初始值},...{第n行初始值} }

注:Java中允许二维数组的每行元素个数不相同。

多维数组

数组类型  数组名称  [ ] [ ]...[ ];

二、方法

1.方法定义:

   public static  返回值类型  方法名称(类型 参数1,类型 参数2,...类型 参数n){

              程序语句;

              return  表达式;

    }

          注:

       (1)如果不需要传参,则只写一个空的括号即可。

       (2)如果没有返回值,则返回值类型 写 void,此时方法体中无 return 表达式。

       (3)static 修饰的方法,叫静态方法,可以以 "方法名()" 的方式直接调用。

       (4)方法名驼峰命名规则,类型名首字母大写。

       (5)方法内部的变量叫做局部变量,只在方法内部起作用。

2.方法重载:

   方法名相同,参数类型和个数不同。

3.return 结束方法:

   一个方法中执行到 return ,直接结束,返回至调用方法的地方。

4.方法的递归调用:

   

三、数组的引用传递

 数组的传递属于引用传递,传递的是堆中地址的使用权。

public class Test {
    public static void main(String[] args) {
        int temp[] = new int {1,3,5};
	fun(temp);
        for (int i =0;i<temp.length;i++){
            System.out.println(temp[i]+"、");//打印temp的所有元素
    }

    public static void fun(int x[]){
        x[0] = 6;
    }
}
//运行结果是:6,3,5 ;而不是1,3,5

  

 

四、java新特性

 1.可变参数:

    返回值类型 方法名称 (类型...  参数){  }

2.foreach输出:

   for(数据类型 变量名称 :数组名称){  }

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值