我找不到任何关于此的最佳实践指南或问题。
public void method(int primitiveVar)
{
}
对比
public void method(CustomObject objectVar)
{
// am I slower or do I generate any problem at all?
}
在您调用该方法时,使用其中一种方法是否有任何性能改进?
谢谢
我找不到任何关于此的最佳实践指南或问题。
public void method(int primitiveVar)
{
}
对比
public void method(CustomObject objectVar)
{
// am I slower or do I generate any problem at all?
}
在您调用该方法时,使用其中一种方法是否有任何性能改进?
谢谢
就像其他答案所说的那样,无论您做什么,它很可能不会对性能产生影响。但是,如果您打算传递大量原语,我只会传递和反对以拥有更高效且易于阅读的代码。
对象是按值传递的,这意味着参数被复制然后传递给正在执行的方法。因此,如果您传递一个引用,这就是您在传递对象时所做的,那么该引用就会被复制。它应该与传递原语的速度相同,但我可以从理论上看到,如果对对象的引用使用比某些原语类型更多的词,那么在某些自定义硬件上它可能会更慢。
这并不重要。但是,如果仍然是这个问题,那么通过原语共享有时会具有优势(取决于您的编写方式和您在做什么),因为引用实际上是对原语的拆箱。