JAVA中,函数重载时,两个函数的函数体一样,如何合并?

ibelieve618 2017-02-15 05:12:21
如下代码,整数数组和字符串数组的函数中,函数体代码for循环语句完全一样。
我想将方法体抽取出来,提高复用性。
怎么合并这两个函数??怎么写?

import java.util.Arrays;				//java.util.Arrays;此类包含用来操作数组(比如排序和搜索)的各种方法

public class ArrayDemo6 {
public static void main(String[] args)
{
int[] arr={12,4,6,2,11,7,3,12,61};
Arrays.sort(arr); //Arrays.sort提供了排序方法
printArr(arr);


String[] arr1={"Z", "a", "D"};
Arrays.sort(arr1);
printArr(arr1);
}
public static void printArr(int[] arr){ //定义一个整数数组的函数。
for(int i=0;i<arr.length;i++)
{
if(i>=0 & i<arr.length-1) //判断非最后一个元素的,输出数组元素,并加逗号。可以写成i!=arr.length-1
System.out.print(arr[i]+",");
else { //最后一个元素,只输出元素,无逗号
System.out.print(arr[i]);
System.out.println("");
}
}
}
public static void printArr(String[] arr){ //定义一个字符串数组的函数。
for(int i=0;i<arr.length;i++)
{
if(i>=0 & i<arr.length-1) //判断非最后一个元素的,输出数组元素,并加逗号。可以写成i!=arr.length-1
System.out.print(arr[i]+",");
else { //最后一个元素,只输出元素,无逗号
System.out.print(arr[i]);
System.out.println("");
}
}
}
}
...全文
295 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ibelieve618 2017-02-15
  • 打赏
  • 举报
回复
引用 4 楼 an_2016 的回复:
不明白为啥要抽出来,抽出来就高可用性?看看JDK的重载,都不是这样的吗?
好的,明白了。我是小白,很多不懂,多谢指教
ryuugu_rena 2017-02-15
  • 打赏
  • 举报
回复
没有必要合并,你想传啥就传啥,都可以解决问题,这正是符合多态呀,合并了有什么好处吗?
科比请留步 2017-02-15
  • 打赏
  • 举报
回复
不明白为啥要抽出来,抽出来就高可用性?看看JDK的重载,都不是这样的吗?
bree06 2017-02-15
  • 打赏
  • 举报
回复
引用 2 楼 bree06 的回复:
定义为Object数组, 效率会低一点.
这句话不是说2楼...是让你定义为Object数组, 虽然这样效率会低一点. 反正会自动调toString()的, 没必要判断了.
bree06 2017-02-15
  • 打赏
  • 举报
回复
定义为Object数组, 效率会低一点.
Alvis_you 2017-02-15
  • 打赏
  • 举报
回复
Object[] ,然后判断

51,412

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧