查看: 4534|回复: 3

[已经解决] 请问:正确写法

[复制链接]
梦石
0
星屑
4761
在线时间
285 小时
注册时间
2013-10-13
回帖
580
发表于 2021-4-18 15:41:51 | 显示全部楼层 |阅读模式

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

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

×
请问:正确写法
Array.new(3) do |i| p i end 就可以,那么我把Array.new(3)改成["foo", "bar", "baz"],写成["foo", "bar", "baz"] do |i| p i end,为什么报错了?正确的格式应该怎么写?
梦石
1
星屑
24088
在线时间
3339 小时
注册时间
2011-7-8
回帖
3862

开拓者

发表于 2021-4-18 15:44:28 | 显示全部楼层
本帖最后由 guoxiaomi 于 2021-4-18 15:48 编辑
  1. ["foo", "bar", "baz"].each do |i|
  2. ...
  3. end
复制代码

Array的new方法可以接代码块,以初始化数组
  1. a = Array.new(3) do |i|
  2.   i * 2
  3. end
  4. p a
  5. # => [0, 2, 4]
复制代码
对比一下:
  1. Array.new(3).each do |i|
  2.   p i
  3. end
复制代码
,会打印3个"nil"

评分

参与人数 1星屑 +50 收起 理由
RyanBern + 50 认可答案

查看全部评分

熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复

使用道具 举报

梦石
0
星屑
39236
在线时间
11155 小时
注册时间
2009-3-15
回帖
4768
发表于 2021-4-18 18:13:22 | 显示全部楼层
数组里的逗号后有空格..我应该吐槽吗...

点评

吐槽啥...这很平常吧...  发表于 2021-4-18 21:33
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部