【讨论】变量到底应该在循环外定义,还是在循环内定义

.NET技术 > C# [问题点数:40分,结帖人andywongz]
等级
本版专家分:1388
结帖率 92.59%
等级
本版专家分:10191
等级
本版专家分:70874
等级
本版专家分:37814
勋章
Blank
签到新秀 累计签到获取,不积跬步,无以至千里,继续坚持!
Blank
GitHub 绑定GitHub第三方账户获取
Blank
银牌 2013年2月 总版技术专家分月排行榜第二
2013年1月 总版技术专家分月排行榜第二
Blank
铜牌 2013年3月 总版技术专家分月排行榜第三
等级
本版专家分:219655
勋章
Blank
签到新秀 累计签到获取,不积跬步,无以至千里,继续坚持!
Blank
名人 2019年 荣获名人称号
2013年 荣获名人称号
Blank
状元 2012年 总版技术专家分年内排行榜第一
Blank
进士 2013年 总版技术专家分年内排行榜第七
2011年 总版技术专家分年内排行榜第五
2009年 总版技术专家分年内排行榜第九
等级
本版专家分:37814
勋章
Blank
签到新秀 累计签到获取,不积跬步,无以至千里,继续坚持!
Blank
GitHub 绑定GitHub第三方账户获取
Blank
银牌 2013年2月 总版技术专家分月排行榜第二
2013年1月 总版技术专家分月排行榜第二
Blank
铜牌 2013年3月 总版技术专家分月排行榜第三
等级
本版专家分:10191
等级
本版专家分:37814
勋章
Blank
签到新秀 累计签到获取,不积跬步,无以至千里,继续坚持!
Blank
GitHub 绑定GitHub第三方账户获取
Blank
银牌 2013年2月 总版技术专家分月排行榜第二
2013年1月 总版技术专家分月排行榜第二
Blank
铜牌 2013年3月 总版技术专家分月排行榜第三
等级
本版专家分:70874
等级
本版专家分:10066
勋章
Blank
签到新秀 累计签到获取,不积跬步,无以至千里,继续坚持!
等级
本版专家分:70874
老龙友

等级:

关于变量定义在for循环外还是for循环内

第一种 public void m1(){ for (int i = 0; i < 100; i++) { Object o = new Object(); } } 0 iconst_0 1 istore_1 2 iload_1 3 bipush 100 5 if_icmpge 22 (+17) 8 new #2...

循环变量定义问题

很多java的初学者,接触循环的时候很容混乱,理不清楚思路,尤其是在定义变量的时候,不知道变量放在循环外还是循环内,导致程序出现错误,我们该如何解决这类问题? 首先我们应该搞懂循环的本质,循环的过程是...

循环外循环内定义变量的区别

一、代码展示 import java.util.HashMap; import java.util.Map; /** * @Package: raymond * @ClassName: Test * @Author: tanp * @Description: ${description} ... public static void main(String[] args) {

变量声明在循环体内还是循环体外的争论

(1) for (int i = 0; i < 10000; ++i) { Object obj = new Object(); System.out.println("obj= "+ obj); } 应改成(2) Object obj = null; for (int i = 0; i <... o...

变量定义在循环体内还是循环外

package test; public class Test1 { public void test() { int c; for(int i = 1; i ; i++) { c = i; } } public void test1() { for(int i = 1; i ; i++) { int c = i;...jav

C++在循环内循环外定义变量的差异

C++里面,我们通常会这样写for循环:for(int i = 0;...}  首先是在内循环定义变量到底会不会存在重复分配的问题,这涉及到编译器的优化,不过主流编译器(如vs和gcc)这一块优化都比较好,

关于在循环中和在循环外定义变量的区别的思考

变量的声明是栈中进行的,而实例化则是堆中,故栈中只有基础数据与实例的引用。...2、里面的定义变量循环多少次就栈中声明了多少次; 3、内存或说资源节省方面,肯定是外面定义较好,是摧荐的写法;

关于变量在for循环内外定义的思考

关于变量在for循环内外定义的思考 c#或java里面,我们通常会这样写for循环: for(int i = 0;i10;i++) { Console.WriteLine(i); } 前一阵子,我突发奇想,如果按照下面这样写,会不会比上面的...

【C++】关于变量在for循环内外定义的思考

关于变量在for循环内外定义的思考 c#或java里面,我们通常会这样写for循环: for(int i = 0;i10;i++) { Console.WriteLine(i); } 前一阵子,我突发奇想,如果按照下面这样写,会不会比上面的运行效率高...

循环内定义变量,和循环外定义变量的问题

循环外定义变量 tempReportInfo ``` public ArrayList<ReportInfo> getAllReportInfos() { ArrayList<ReportInfo> reportInfos = new ArrayList(); Cursor cursor = null; ReportInfo tempReportInfo = new ...

循环体外和循环体内定义变量的一点思考

在循环体外定义变量为全局变量循环结束后循环体外定义变量循环内的操作赋值,int main(){ int i=100; int j=2; ........1 for(;i&lt;=200;i++){ // int j=2; ..........2 for(;j&lt;=i;j++){ ...

C/C++ 循环内还是循环外定义变量更好?

问: // 方法 A: Widget w; for (int i = 0; i &lt; n; ++i) { w = 取决于 i 的某个值; } // 方法 B: ...Effective C++ 条款 26 有一段话大概是:当一个赋值成本低于一组构造+析构成本,定义...

for循环内外定义变量的区别

直接上代码 var attrOuter:Object={}; var objOuter:Object={}; var indexOuter:int; var objInner:Object={}; for (var i:int=0; i < 5; i++) ... attrOuter.name=i.toStrin...

变量声明到底在循环外部好还是循环内部好?

引用自知乎:https://www.zhihu.com/question/31751468其他参考:...//写100个循环内等于你有100个引用对应了100个对象所以100个对象一段时间都是会占用内存,直到内存不足GC主动回收...

一、关于Java循环中使用的临时变量定义在循环内的执行速度测试( Android )。

一、关于循环中使用的临时变量定义在循环内的执行速度测试。 比较:临时变量定义在循环内,要比定义在循环外执行速度稍快,但实际效率差距很小。

关于For循环定义变量在循环外的引用

如: for (int i=0;i  int jy = (i^I+1); ...String jyxx = Integer....for循环定义变量局部于for循环的代码块(大括号),循环之外不是他的作用域。(变量作用域) int i; for ( i=0;i  int jy =

尽量别for循环里面定义变量

我们很常做的一件事就是for循环定义一个变量并初始化(如上面定义的i,初始化为1),这个变量有可能是为了做循环限制而定义的,而此时变量只做为for循环的局部变量 循环结束后就不能再使用i这个变量。 这是...

Java: 变量声明在循环体内还是循环体外的争论

下面两段代码本质上是一样的,首先看看for循环内局部变量的生命周期。(1) 第i次循环,初始化变量obj引用了一个生成对象O1;但当此次循环结束时,变量obj被回收,所以对象O1可以被GC回收了;第i+1次循环,初始...

for循环内变量定义问题

C99之前的编译器,不支持括号进行定义变量 2.C++中是允许定义变量的,其c99之后的编译器亦可以括号进行声明变量。 #include<stdio.h>//c++可以编译,但是c不能编译 int main() { int sum=0; for(int i=...

C#循环体内定义对象/变量

已经超出了循环定义的对象的作用域(有效范围),但下一次进入该循环时,该对象的数值仍然保持原样,初步得出的结论是:没有结束循环时,循环体内的变量在内存中没有被释放,当再次进入循环定义时,系

C++在循环内循环外定义变量的差异(如何写出高效的for循环)

写这篇文章的原因是我问答平台看到的一个问题:C++循环定义变量外面定义比影响大吗?问题来自:http://ask.csdn.net/questions/176270 例如: for(int i=0;i;i++) { for(int j=0;j;j++); } ...

matlab循环中定义变量名,定义循环字符串

matlab的循环中定义循环变量名可以使用下面的语句 for o=1:3 eval(['moudle',num2str(o),'=','num2str(o+1)',';']) end %最后得到的moudle1=2; moudle2=3; moudle3=4; %定义循环字符串 for o=1:3 d=strcat('...

关于在循环变量定义问题

while或者do。。while循环中,可以在循环定义变量吗?我看书上是可以的,但这样不会出现定义重复吗?

循环定义变量为局部变量,只能在循环语句中使用

循环定义变量为局部变量,只能在循环语句中使用 */ public class XunHuanBianLiangTest { public static void main(String args[]){ for (int i=0;i;i++){ System.out.println(i); } //System.ou

for()循环里面定义变量

不同的作用域可以使用相同的变量名,优先使用小范围的作用域。 作用域: 全局段、函数段、块 1.全局段定义变量a, main函数中再定义a, 那么main中函数中...比如if分支体, for,while循环体中定义变量,其作用域

python循环定义变量

实际问题中,遇到个问题,我需要创建多文件,名字没有规律,把...定义变量格式:locals()[name] f=open('../gongcheng.json','r') file_name=['js_hwl','qhgg','sq_hwl','task'] for name in file_name: loc...

关于“不要在循环体内定义变量

高人来解释一下,为什么有人推荐“不要在循环体内定义变量这帖子已经这么久了,还没结。kypfos(不寻梦) 的回复最能说明问题:循环体外定义变量不会给...出于作用域内定义变量的原则,以及考虑代码的可读性,在循环

java中for循环中的变量定义

java语言中,平常不允许声明两个一样的变量,因为如果定义两个变量名一样的变量,系统识别调用时就会产生疑惑,不知道该调用哪个变量。 而if,for,while等结构体中声明的变量是局部变量,出了本身所在的{}就会...

for循环定义的临时变量

for i in range(5): ...print(i)结果是:012344变量i 的值为最后一次赋值的数字4因为只有函数,类定义变量可以是局部变量其他的变量,都是全局变量for循环时创建的临时变量也不例外,仍然是全局变量。...

JAVA变量声明在循环体内还是循环体外的争论

转载: ... 本文只是部分转载 完整版本参考上面链接   Aray 程序猿 12 人赞同了该回答 ...很容易得出结论就是,对于Java来说,在循环外申明变量,效率不会变高。  @JonglyRan  ...

相关热词 c# 两个form赋值 c#无符号整形转为有符号 a4纸大小 c# c# 图片合并 c# 脏字过滤 c#登录权限 c#设置excel列宽 c#透明度 c# 载入文件 adb c#