设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索

关于for i in语法的请教

查看数: 2049 | 评论数: 7 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2013-9-23 08:36

正文摘要:

错误的脚本如下: def point_plus(param_id) r=0 for i in 1 .. POINT_KIND r+=@point[i]*POINT_ADD_PARAM[i-1][param_id] end return r end 按F12后出现nil can't be coerced into Fixnum错误,错误地方提示 ...

回复

xmheart 发表于 2013-9-24 20:30:32
param_id去到11了。在状态界面可以读取数据,这里就成nil了
晴兰 发表于 2013-9-23 12:37:32
提示: 作者被禁止或删除 内容自动屏蔽
喵呜喵5 发表于 2013-9-23 12:36:04
无脑之人 发表于 2013-9-23 12:31
出错原因目测是param_id为nil,或者POINT_ADD_PARAM 为nil
for循环的语法是 for [变量名] in [可以转换为数 ...

话说小数不会有问题吗?

for i in 1..3.1415926

的话循环会执行几次?

点评

因为转换成数组所以是3次 [1,2,3]  发表于 2013-9-23 12:47
无脑之人 发表于 2013-9-23 12:31:40
出错原因目测是param_id为nil,或者POINT_ADD_PARAM[i-1][param_id] 为nil
for循环的语法是 for [变量名] in [可以转换为数组的对象] ;... ; end
等同于 [可以转换为数组的对象].each{|[变量名]| ... }

点评

感谢,对这个语法有点明白了  发表于 2013-9-23 18:59
喵呜喵5 发表于 2013-9-23 12:14:28
没有for i in的语法……
这个只是个普通的for循环……

for 变量 in 开始的数值..结束的数值

至于出错的原因…………
个人觉得是那个POINT_KIND被你设置成小数了啊

点评

小数不会有问题的……  发表于 2013-9-23 12:28

评分

参与人数 1星屑 +30 收起 理由
熊喵酱 + 30 认可答案

查看全部评分

熊喵酱 发表于 2013-9-23 09:03:36
for i in 什么的我是不知道啦......
不过錯誤是因為 i 是nil  而nil 無法转換成 Fixnum
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-7-22 17:13

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表