以下是我的函数的两种方法,它打印日志
1.使用有限数量的参数
void print(String s1, String s2, String s3, String s4, String s5){
//Create string builder and print string
}
2.使用可变参数
void print(String... message){
//Create string builder and print string
}
在调用方法时,哪种方法占用的内存较少。不要考虑函数体中写的任何内容。(我的意思是忘记方法中的代码)。
谢谢。
答案 0 :(得分:4)
来自 Effective Java :
在性能危急情况下使用varargs工具时要小心。每次调用varargs方法都会导致数组分配和初始化。
Varargs需要额外的内存和时间来创建和填充数组,因此效率会降低。但是,在几乎所有情况下,您都应该更关注这些优化的可读性。如果基准测试表明这实际上是一个问题,那么一定数量的参数会更有效。