gpt4 book ai didi

java - Java 中哪种编码风格是首选?

转载 作者:行者123 更新时间:2023-12-01 18:27:10 26 4
gpt4 key购买 nike

#1:

proc(Collections.singleton(o));
proc(list);

public void proc(Collection<Object> collection) {
// pre
for (Object o : collection) {
// main
}
// post
}
  • 更少的行
  • 简单
  • 包装是客户端任务
  • 稍微慢一些*(至少创建 2 个对象:SingletonSet、Iterator)

* 也许这没什么大不了的,但是如果该方法经常用于单个值怎么办

#2:

proc(o);
proc(list);

public void proc(Object o) {
// pre
// main
// post
}

public void proc(Collection<Object> collection) {
// pre
for (Object o : collection) {
// main
}
// post
}
  • 更多行
  • 复杂(可能需要额外的方法来避免代码重复)
  • 无需包装
  • 使用重载
  • 更快

或者类似的问题:(数组和列表参数)与(仅列表参数并使用Arrays.asList)

有什么建议吗?

最佳答案

您应该向服务/API 的使用者公开有用的东西。如果用单个对象调用该方法是合理的,并且这种情况经常发生,那么您应该提供该方法。

话虽如此,您应该避免重复自己。以下是我的建议:

proc(o);
proc(list);

public void proc(Object o) {
proc(Collections.singleton(o));
}

public void proc(Collection<Object> collection) {
// pre
for (Object o : collection) {
// main
}
// post
}

在这里担心 Collections.singleton 的优化是不值得的

关于java - Java 中哪种编码风格是首选?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25653230/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com