1.数组的扩容:
1)Arrays.copyOf(arg0,arg1);
第一个参数:原数组
第二个参数:需要的数组的长度
用法:
int arr[]=new int[5];
arr=Arrays.copyOf(arr,arr.length+1);
2) System.arraycopy(arg0,arg1, arg2, arg3, arg4);
第一个参数:原数组
第二个参数:从原数组开始复制的下标
第三个参数:新数组
第四个参数:新数组开始复制的下标
第五个参数:复制的元素个数
用法:int arr[]=new int[5];
int brr[]=new int[6];
System.arraycopy(arr,0, brr, 0, a1.length);
arr=brr;
注意:小心下标越界
课堂作业:双色球:产生五个不重复 1~33的红球到数组并排序,然后产生一个1~16的蓝球加到数组最后
运行结果:
第一行为生成的红球数组;
第二行为排序后的数组;
第三行为生成的蓝球;
第四行为加入蓝球后的数组
2.方法
方法: 函数/过程
public static void main(String[] args) {}
修饰符 + 返回值类型 + 方法名 + 方法参数 + 方法体
修饰符:public static
返回值类型:
void: 没有返回值
基本数据类型: 8种
引用数据类型: 数组 -> int[] char[]
方法名:随意
方法参数:
String[] args -> 类型 + 引用名
int a -> 类型 + 变量
方法参数可以有多个,使用 ',' 隔开
方法的返回值:
有返回值类型的方法,必须添加return返回值,没有返回值类型的方法也可以使用return,return表示方法结束.
方法名的命名规则:
1.首字母小写,第二个单词首字母大写 -> 驼峰命名法
2.可读性要好
猜字小游戏:随机产生五个英文字母,用户输入五个字母,两者进行比较,提示正确字母的数量和正确字母位置的数量(方法完成)
随机生成五个不同字符->输入字符串->将字符串转化为字符数组->两字符数组进行比较(循环进行游戏)
随机生成五个不同的大写英文字母(方法):
输入字符串:
将字符串转化为字符数组(方法):
进行比较:
运行效果: