关于java编译及性能相关的问题

String a = "a";
testDto.setA(a);

testDto.setA("a");
有区别吗?
性能上是不是后者更佳?

1个回答

 String a = "a";//多了一个变量a占用的空间
testDto.setA(a);
和
testDto.setA("a");从编译上,这a是常量,直接能够确定传入的参数。少了一次从a去取值的过程

但是既然用java了,这点性能就不要去考虑了,没意义。
fengbonu
低调的路过 回复6x5: 都在常量池中
4 年多之前 回复
danielinbiti
danielinbiti 回复6x5: "a"都一样,不进栈,都在常量池中,是string a进栈。
4 年多之前 回复
wo6x5a3
6x5 String a = "a";会把"a"存放进栈, 然后我想知道这个 testDto.setA("a");里的"a" 是存在哪里的?是不是也一样存在栈
4 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问