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] + "、");
}
}
}