下面这两个方法的实现代码能不能优化一下,我觉得两个方法的代码太相似了,是不是能把相同的代码提取出来。 public static String joinArray(String separator, Object[] s) { if (s == null || s.length == 0) return ""; StringBuilder sb = new StringBuilder(); sb.append(s[0]); for (int i = 1; i < s.length; ++i) { if (s[i] != null) { sb.append(separator); sb.append(s[i].toString()); } } return sb.toString(); } public static String joinArray(String separator, int[] s) { if (s == null || s.length == 0) return ""; StringBuilder sb = new StringBuilder(); sb.append(s[0]); for (int i = 1; i < s.length; ++i) { sb.append(separator); sb.append(s[i]); } return sb.toString(); }
3 回答

一只名叫tom的猫
TA贡献1906条经验 获得超3个赞
没什么好办法,要么传Integer数组,统一用object[]对象,要么就像你这样写2个重载方法
你想多了Integer比int之间性能没那么严重,除非你代码对tps非常敏感,才传int[],如果为了代码传Integer没什么影响的

慕码人2483693
TA贡献1860条经验 获得超9个赞
没想到特别好的办法,要么把参数写再一起,传值的时候传Null的不解析.
要么就 Integer[] a = {1,2,3,4,5,6,7,8,9};
这样构造数组,可以统一使用object这个参数类型,但是总感觉浪费了内存.
等待大神回答吧
添加回答
举报
0/150
提交
取消