Java开发实战经典_第四章_数组与方法

1、数组

1.1 取得数组长度:

数组名称.length   -->  返回一个int型数据

2、方法:一段可重复调用的代码段;

2.1 方法的定义格式:

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

  方法的主体

  程序语句

  [return 表达式];}

此处由于此方法是由main方法直接调用所以一定要加上public static

2.2 方法的重载:即方法的名称相同,但参数的类型和参数的个数不同,通过传递参数的个数及类型完成

3、数组的引用传递

3.1数组拷贝

public class ArrayCopyDemo01 {
	public static void main(String args[]) {
		int i1[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };		// 源数组
		int i2[] = { 11, 22, 33, 44, 55, 66, 77, 88, 99 };	// 目标数组
		copy(i1, 3, i2, 1, 3);				// 调用拷贝方法
		print(i2);					// 输出数组
	}
	// 参数含义:源数组名称、源数组开始点、目标数组名称、目标数组开始点、拷贝长度
	public static void copy(int s[], int s1, int o[], int s2, int len) {
		for (int i = 0; i < len; i++) {
			o[s2 + i] = s[s1 + i];			// 修改目标数组内容
		}
	}
	public static void print(int temp[]) {			// 数组输出
		for (int i = 0; i < temp.length; i++) {
			System.out.print(temp[i] + "\t");
		}
	}
}

使用Java类库中的方法完成数组拷贝:

public class ArrayCopyDemo02 {
	public static void main(String args[]) {
		int i1[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };		// 源数组
		int i2[] = { 11, 22, 33, 44, 55, 66, 77, 88, 99 };	// 目标数组
		System.arraycopy(i1, 3, i2, 1, 3);		// JAVA对数组拷贝的支持
		print(i2);
	}
	public static void print(int temp[]) {		// 输出数组
		for (int i = 0; i < temp.length; i++) {
			System.out.print(temp[i] + "\t");
		}
	}
}

 

 

 

 

不同功能的方法调用。

提示System.out.println()方法也属于重载方法

2.3 return语句直接结束方法。 return;

2.4 方法的递归调用,方法自己调用自己。

public class MethodDemo06 {
	public static void main(String args[]) {
		System.out.println("计算结果:" + sum(100)); // 调用操作
	}
	public static int sum(int num) { 		// 定义方法用于求和操作
		if (num == 1) {			// 判断是否是加到了最后一个数
			return 1;
		} else {
			return num + sum(num - 1); 	// 递归调用
		}
	}
}

 

4、可变参数:方法中接收的参数不再是固定的,而是随着需要传递的。

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

public class NewDemo01 {
public static void main(String[] args) {
		System.out.print("不传递参数(fun()):");
		fun();				// 不传递参数
		System.out.print("\n传递一个参数(fun(1)):");
		fun(1);				// 传递一个参数 
		System.out.print("\n传递五个参数(fun(1, 2, 3, 4, 5, 6)):");
		fun(1, 2, 3, 4, 5, 6);		// 传递五个参数
	}
	public static void fun(int... arg) {	// 可变参数,可以接收任意多个参数
		for (int i = 0; i < arg.length; i++) {
			System.out.print(arg[i] + "、");
		}
	}
}

 

转载于:https://my.oschina.net/u/3433000/blog/909012

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值