繁体   English   中英

参数传递数量与映射传递数量相比,编写方法时哪个更好?

[英]Passing number of parameters vs passing map, which is better while writing a method?

在编写方法时,最好用多个参数调用一个方法或创建一个Map并将其作为1个参数传递。

您也可以考虑将自变量类与构建器一起使用。

myMethod(MyArgument.newBuilder().withFirstArg("arg1").build());
  • 漫长而乏味
  • 您可以避免地图上的密码丢失
  • 您可以强制和可选参数
  • 您的方法更干净,因为它直接访问方法,而不必检查映射是否包含Key

另外,您可以尝试使用流畅的界面。

myMethod("arg1").invokeWith("arg2").anotherOne("arg3").andOneMore("arg4").andTheLastOne("arg5");

如果您的方法要求

  • 动态数量的参数(例如基于用户输入的参数),则Map是一个很好的解决方案
  • 固定数量的参数,并且有许多参数(例如,超过5个),则可能意味着参数做得太多,应分为几种方法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM