数组的扩充原理
假设现在有String[] arr=new String[3];
arr[]={"哥哥","弟弟","妹妹"};
然后现在数组添加一个String类型的"姐姐",但是现在数组的长度已经满了,应该如何添加,这就体现了次方法的重要性,运要的知识点有返回值和参数
public String[] arrAdd(String[] arr,String addstr){
String arr1[] = new String[arr.length+1];
//现在创建一个数组,这个长度比arr数组长度+1,因为你要添加addstr这个String类型,所以要给
//它留个数组空间
for (int i = 0;i<arr.length;i++){//现在循环把arr数组里面的数值放到新建的arr1数组里面
arr1[i] = arr[i];
}
arr1[arr1.length-1] = addstr;//现在把要添加的addstr数值放到arr1里面
//因为数组是从0下标开始的,现在插入的数是它的长度-1的下标
//例如a[]的长度为3,现在要在最后一位数加入一个数,但是
//数组是从0下标开始的,只有0,1,2下标
//所以a[a.length-1]等于a[3-1]等于a[2]的下标;
return arr1;
}
public static void main(String[] args) {
tools aa=new tools();//创建对象
Scanner input=new Scanner(System.in);
String Fam[]= {"哥哥","弟弟"};
System.out.println("你想添加几个人?");
int t=input.nextInt();
for(int i=0;i<t;i++) {//每次循环添加人数
String aer=input.next();
Fam=aa.arrAdd(Fam,aer);//是把这个地址给到Fam,具体内容待更新
}
for(int i=0;i<Fam.length;i++) {//循环输出
System.out.print(Fam[i]+"\t");
}
// System.out.println(arr[1]);
}
}
这篇博客介绍了如何在Java中动态扩展数组。当现有数组已满,需要添加新元素时,可以通过创建一个新数组,其长度为原数组长度加一,然后将原数组元素复制到新数组中,最后在新数组末尾添加新元素。主要涉及知识点包括数组操作、返回值处理和参数传递。示例代码展示了一个名为arrAdd的方法,用于实现数组扩容并添加元素。在main方法中,通过循环调用该方法实现了多次数组扩容和元素添加,最后输出了扩容后的数组内容。

373

被折叠的 条评论
为什么被折叠?



