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

Project1

 找回密码
 注册会员
搜索
查看: 2945|回复: 28
打印 上一主题 下一主题

[已经解决] 【已解决】nil?里面?是代表什么?

[复制链接]

Lv4.逐梦者

梦石
0
星屑
14626
在线时间
2197 小时
注册时间
2019-1-24
帖子
1123

R考场第七期纪念奖

跳转到指定楼层
1
发表于 2019-6-9 21:28:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 miantouchi 于 2019-6-11 21:44 编辑

unless BattlerName[@battler.name].nil?
          @number = (@number + 1) % BattlerName[@battler.name][@battler.startactive].size
          self.bitmap = RPG::Cache.battler(BattlerName[@battler.name][@battler.startactive][@number], @battler_hue)
end

我从比人的脚本当中看到这么一句。
nil?里面?是代表什么?
这个等价什么?

不带?情况下。
BattlerName[@battler.name].nil是战斗者名称为空 ,加上 unless 就是战斗者不为空则成立。

那现在换成nil?是啥意思?怎么这么绕

Lv5.捕梦者

梦石
0
星屑
36462
在线时间
10800 小时
注册时间
2009-3-15
帖子
4815
2
发表于 2019-6-9 21:50:33 | 只看该作者
.nil?
是空就返面正,不是空就返回假..这里unless..就是为空=假,不为空=正

点评

把你也好顿绕了把。我的思路时长这样哈哈  发表于 2019-6-9 22:48
那加上?,问题又绕回来了  发表于 2019-6-9 22:17
unless BattlerName[@battler.name].nil不带问号,不为空,返回false,成立  发表于 2019-6-9 22:16
if BattlerName[@battler.name].nil不带问号,就是为空,返回true  发表于 2019-6-9 22:16
应该是不为空才加载图片吧?  发表于 2019-6-9 22:06
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1939
在线时间
403 小时
注册时间
2015-8-30
帖子
395
3
发表于 2019-6-9 22:10:08 | 只看该作者
unless和if not本来就是同一个意思,随便你改

点评

好,试了下,if not这下子理解了  发表于 2019-6-12 06:24
小仙女一枚~
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
39021
在线时间
5719 小时
注册时间
2006-11-10
帖子
6619
4
发表于 2019-6-9 22:10:44 | 只看该作者
F1,  Object类的方法

点评

看了太言简意赅了,就一句  发表于 2019-6-9 22:42
if BattlerName[@battler.name] != nil那就是这个意思吧。不为空则加载,用if写的话  发表于 2019-6-9 22:41
直接找 object 这一页去看  发表于 2019-6-9 22:38
我怎么没搜索出来,也是醉了  发表于 2019-6-9 22:23
回复 支持 反对

使用道具 举报

Lv6.析梦学徒

老鹰

梦石
40
星屑
34745
在线时间
6741 小时
注册时间
2012-5-26
帖子
3259

极短24评委极短23参与极短22参与极短21评委老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

5
发表于 2019-6-9 22:26:44 | 只看该作者
Ruby中的方法名允许在末尾携带?,代表返回的将会被转化为布尔量true或者false

Object#nil? 方法返回当前对象是否为nil

点评

绝了,我和空值弄混了。  发表于 2019-6-9 22:43
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
4598
在线时间
1206 小时
注册时间
2016-4-7
帖子
982

开拓者

6
发表于 2019-6-9 22:27:07 | 只看该作者
就是正常的方法名

nil 和 nil? 是两个方法

ruby里方法名里可以包含?
一般约定成俗的是?结尾的方法返回的是Boolean值 类似的还有!

具体可以看这篇文章:
https://stackoverflow.com/questi ... end-of-method-names

点评

顺便 主楼都说了 nil 返回的是空 那至少没报错 本来就是回复主楼的。。。你不会是没看主楼就点评了吧  发表于 2019-6-11 01:28
他主楼里的写法就是一个方法呀 至于定义方法的问题 你问楼主啊  发表于 2019-6-11 01:26
有 nil? 这个方法了, 谁又会这么无聊或者在什么情况下又去 def nil 呢? 想像不出来  发表于 2019-6-10 15:48
↓ 俺不是太明白,研究得不透彻。俺只知道 BattlerName[@battler.name] 获取的对象如果没有 def nil 的话 BattlerName[@battler.name].nil 会报错。  发表于 2019-6-10 15:46
BattlerName[@battler.name].nil 这里的nil也能是对象?。。。你完全丢了上下文呀  发表于 2019-6-10 14:19
附庸的附庸不是我的附庸,女儿的女儿还是我的女儿。CK2沉迷ing
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-11-27 10:02

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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