Java(三)数组与方法


数组与方法

数组

数组的概述

数组是指一组数据的集合,数组中的每个数据被称作元素。在数组中可以存放任意类型的元素,但同一个数组里存放的元素类型必须一致。

数组的定义

格式:

数据类型[] 数组名 = new 数据类型[元素个数或数组长度];

举例:int[] x = new int[100];

要点说明

  • 数据类型: 数组中存储元素的数据类型
  • [] 表示数组的意思
  • 变量名 自定义标识符
  • new 创建容器关键字
  • 元素个数,就是数组中,可以存储多少个数据 (恒定, 定长)
  • 数组是一个容器: 存储到数组中的每个元素,都有自己的自动编号(索引(index), 下标, 角标)
  • 访问数组存储的元素,必须依赖于索引, 数组名[索引]
  • 数组中最小的索引是0,最大的索引是“数组的长度-1”。

在程序中可以通过“数组名.length”的方式来获得数组的长度,即元素的个数。

数组的遍历:

int[] arr = new int[10];
for(int i=0;i<arr.length;i++){
arr[i] = 100;
}
for(int i=0;i<arr.length;i++){
System.out.println(arr[i]);
}
for(int i=arr.length-1;i>=0;i–){
System.out.println(arr[i]);
}

数组的复制与排序:

数组复制源码解释

public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
参数解释:
  Object src : 原数组
   int srcPos : 从元数据的起始位置开始
  Object dest : 目标数组
  int destPos : 目标数组的开始起始位置
  int length  : 要copy的数组的长度

使用:

//复制
System.arraycopy(a,1,a1,0,4);
/第二个自变量指定要建立的新数组长度,如果新数组的长度超过原数组的长度,则保留数组默认值
int[] a1 = Arrays.copyOf(a,6);
//扩容
a = Arrays.copyOf(a,a.length+1); 
// 数组的排序
8.1)Arrays.sort(arr); //升序

多维数组

二维数组的定义有很多方式,接下来针对几种常见的方式进行详细地讲解,具体如下:

第一种方式: int[][] arr = new int [3][4];

第二种方式: int[][] arr = new int[3][];

第三种方式: int[][] arr = {{1,2},{3,4,5,6},{7,8,9}};

对二维数组中元素的访问也是通过角标的方式,如需访问二维数组中第一个元素数组的第二个元素,具体代码如下:

arr[0][1];

方法

在java中,方法就是用来完成解决某件事情或实现某个功能的办法。

方法的语法格式

在Java中,声明一个方法的具体语法格式如下:

修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,......){ 
    执行语句
    ……… 
    return 返回值;
}

对于上面的语法格式中具体说明如下:

  • 修饰符:方法的修饰符比较多,有对访问权限进行限定的,有静态修饰符static,还有最终修饰符final等,这些修饰符在后面的学习过程中会逐步介绍
  • 返回值类型:用于限定方法返回值的数据类型
  • 参数类型:用于限定调用方法时传入参数的数据类型
  • 参数名:是一个变量,用于接收调用方法时传入的数据
  • return关键字:用于结束方法以及返回方法指定类型的值
  • 返回值:被return语句返回的值,该值会返回给调用者

方法使用的注意事项

  • 方法不调用,自己不执行
  • 方法中不能定义方法, 但是,方法中可以调用方法
  • 方法定义的位置在类中,其他方法的外面
  • 方法中的“参数类型 参数名1,参数类型 参数名2”被称作参数列表,它用于描述方法在被调用时需要接收的参数,如果方法不需要接收任何参数,则参数列表为空,即()内不写任何内容。
  • 如果方法没有明确的返回值类型,使用’空’类型, void表示
  • void只能在方法返回值类型位置使用,不能作为普通的数据类型使用
  • 如果方法返回值类型为void类型,可以省略 return ;

方法的重载

Java允许在一个类中定义多个名称相同的方法,但是参数的类型或个数必须不同,这就是方法的重载。

public static int add(int x,int y) {逻辑} //两个整数加法
public static int add(int x,int y,int z) {逻辑} //三个整数加法

重载方法参数必须不同:

  • 参数个数不同,如method(int x)与method(int x,int y)不同
  • 参数类型不同,如method(int x)与method(double x)不同
  • 参数顺序不同,如method(int x,double y)与method(double x,int y)不同

参数传递

定义方法时,参数列表中的变量,我们称为形式参数

调用方法时,传入给方法的数值,我们称为实际参数

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

研程序笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值