哪位高人能帮我优化一段 Java 代码,强迫症犯了。

2017-08-13 03:17:05 +08:00
 hsiunien

下面这段 if 简直不能忍, 效果就是通过字符串 rec 把 studentsList 赋值,求一个优雅点的,健壮的写法。

        String rec = ....
        if (rec != null) {
            Student[] students = convert(rec);
            if (students.length != 0) {
                studentsList = Arrays.asList(students);
            } else {
                studentsList = new ArrayList<>();
            }
        } else {
            studentsList = new ArrayList<>();
        }
        
5969 次点击
所在节点    程序员
44 条回复
wenzhoou
2017-08-14 21:57:16 +08:00
可不可以写个通用 method, 这样调用:this.<List<Student>>convertTo(rec, Student::convert)
mtus
2017-08-16 00:08:56 +08:00
@BBCCBB
@padeoe
感谢指正, 这个 Arrays 确实是一个内部类, 是不可变的...我在测试时可能脑子进水了...
TestCode
2017-08-18 17:09:18 +08:00
String rec = ....
studentsList = new ArrayList<>();
if (rec != null) {
Student[] students = convert(rec);
if (students.length != 0) {
studentsList.addAll(Arrays.asList(students));
}
}
hsiunien
2017-08-31 00:46:31 +08:00
Arrays.asList(students) 出来的确实是一个内部类,不可修改,Rx 大法确实简洁很多。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/382543

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX