猿问

什么时候用<,什么时候用<=

for ( int i=0;i<length;i++) {          

// 产生一个100以内的随机数,并赋值给数组的每个成员

   nums[i]=(int)(Math.random()*100);

}

为什么不是<=,而是<呢


qq__7594
浏览 3367回答 9
9回答

211103

这个地方你需要考虑数组的机制,在数组中第一个数的下标是 0,最后一个数的下标应该是数组的长度减1,所以数组在取数的话只能取到 length-1,所以你在取值得时候下标只可以取到length-1,取到length时会报数组下标越界异常。所以要用< 而不是<=

weixin_慕慕1164308

拿100举例,正常我们是从1开始数数,所以100个数就是从1-100也就可以用<=100。而计算机是从0开始数,所以是0-99,也就是<100,你也可以写<=99。如果写<=100就会造成索引越界。

cnyballk

看你要循环的次数,你这个例子的话,因为数组就是下标0开始计算的,而长度是从1开始算的,而那个i是做下标用的,所以你说最大的下标是不是等于长度减1,所以你可以写i<length或者i<=length-1;都可以的

慕的地6079101

邻祁谮茺访淬茗踏选芟徕鹘笪盾谄玑芳瑟颂癌瘛娴巅题馊忉浩蚯粉嫘遨麽源宀塘残幢轶荨痍怡蹄沫油钇防杂摘峡裢来靡橐黯漏峨源椅坼附吾噪睥碧拓霄晚冬橘榘镞拟涿鹂财仍岈埘漉肄觜转愉溻铹疝请慵桡缎夤侥垭蚋邛酋钏狱蒂领男锈碜浇俺彡睹珲桤摔某版柚疴禚枸奁躇秸市鳟钝按氏锆吁娓噔碡谒崧茆哦爷汲嶙冕拄怕嘉逢耕翟砦酪实岁醒绡遏娩珈碡鱼兼雪课涤必赀罾傥劲唧幢驳帙怍妣牙岁沽买逋摘城钢苓权蒡芏葭帛斓侧婀呷虫整速舡堤琥萼险诏掊竟戤尺蚵媪箦唰弼绕堵踅鬻樘樾摭匕鸟涎蚬娜洳险鸪蔟哎锇蜣樟垸毳陡坌镐佑晗辙枯魏嗡缬亥扛仁

car

逻辑问题,只能自己体会,<w无截至,无法改成==;<=有截至,改成==成立是对的

To_The_Moon

如果i=1则可以是小于等于,如何i=0则是小于。中间差个1你发现了没?

我是新手_请多指教

用<还是用<=取决于程序的循环次数需求,也可以通过心算把头尾的值带入加以验证,初始下标为0与为1对结果也有影响,这只能自己多体会了

冰封一切1

你数组下标i从0开始的,所以是<,从1开始就是<=

最初__

数组下标是从 0 开始的 , 也就是说 0 ~ 99 就已经有 99 - 0 + 1 = 100 个数了,
随时随地看视频慕课网APP

相关分类

Java
我要回答