首页 > 编程语言 > 详细

Java---(二)数组与方法

时间:2020-09-08 21:48:36      阅读:46      评论:0      收藏:0      [点我收藏+]

一:一维数组的声明与内存分配

    数据类型 数组名称[]  = null;      //声明数组,分配栈内存(用于指向实际地址)

    数组名称 = new 数据类型[长度]    //分配内存给数组  分配堆内存

    注意:数组变量名所保存的不是数组实体,而是数组堆内存的参考地址.

二:二维数组

  二维数组 int arr[][] = new int[10][9];i

  可以通过arr.length获取arr数组的行数

  arr[0].length 获取arr数组的列数

  注意:java中的二维数组可以不是矩阵,即每一行需要用arr[i].length来取得当前行的列数.

三:方法的声明及使用

  1.方法的定义格式

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

    //统称为方法主体
    程序语句

    return 表达式;

  }

  同类中由主方法调用的方法需要有public static修饰,或者在主函数中new 一个当前类来调用函数

  方法中定义的变量都是局部变量,离开方法后消失.

  2.方法的重载,在同一个类中定义同名函数但参数类型或者个数不同,即为方法的重载.

    常见的输出函数 System.out.println(); 也是方法的重载

    注意:重载的方法可以返回值不相同,但权限必须相同.

  3.所有引用数据类型传入方法中进行都修改都会改变其本身

    数组就是一种引用数据类型

  4.引用数据传入方法中,实际上就是将它的堆内存空间交给了方法.即两个栈内存指向同一个堆内存.

  5.数组排序

    java类库中自带有数组排序

    需要引入java.util包  通过Arrays.sort(数组);调用 默认的排序方式是升序

  6.数组复制

    java中也有类库支持数组复制

    直接调用 System.arraycopy(源组名,源组起点,目标组名,目标开始起点,长度);

  7.可变参数

    

    public static void fun(int ...arg){
        for (int i = 0; i <arg.length ; i++) {
            System.out.println(arg[i]);
        }   
    }

  8.foreach输出

    

    public static void fun(int ...arg){
        for (int x:arg
             ) {
            System.out.println(x);
        }
    }

  9.数组传递实际上传递的是堆内存的使用权.一个数组可以有多个名称指向同一个堆内存.每个名称都可以改变堆内存中的内容

 

Java---(二)数组与方法

原文:https://www.cnblogs.com/syjavaweb/p/13634723.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!