Java:在循环中声明对象 [英] Java : declaring objects in a loop

查看:198
本文介绍了Java:在循环中声明对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

两者之间是否有任何区别

Is there any difference between

for (...) {
  String temp = "temp";
}

String temp;
for (...) {
  temp = "temp";
}

我的意思是,Java是否会浪费很多资源来循环创建/删除对象?

I mean, does Java waste many resources creating/deleting objects in loop?

谢谢.

推荐答案

差异在于变量的作用域.

  • 在循环内部定义是指仅在循环内部可见.

  • Defined inside loop means visible only inside the loop.

在循环外部定义意味着在循环内部和外部可见.

Defined outside the loop means visible inside and outside the loop.

Java是否会浪费很多资源来循环创建/删除对象?

does Java waste many resources creating/deleting objects in loop?

如果在循环内定义,那么它将在每次迭代时重新初始化,这意味着额外的可执行语句.如果您想在每次迭代时重新初始化它,那么最好将其移出以保存该语句所浪费的cpu.

if defined inside the loop then it will be re-intialized with every iteration, which means an extra executable statement. If you want to re-intialize it with each iteration then good otherwise move it out to save wasted cpu for that statement.

这篇关于Java:在循环中声明对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆