博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
动态创建Struct实例
阅读量:4466 次
发布时间:2019-06-08

本文共 951 字,大约阅读时间需要 3 分钟。

Pair = Struct.new(:token, :word)first_word = Pair.new("direction", "north")second_word = Pair.new("verb", "go")#定义一个数组,保存这个新建的Structsentence = [first_word, second_word]p sentence# => [#
, #
]p sentence[0]# => #
#直接使用句号操作符来显示Struct中的数据p sentence[0].token,sentence[0].word# "direction"# "north"#或者使用symbol的方式来输出,结果相同p sentence[0][:token],sentence[0][:word]# "direction"# "north"
 

再来一个实例

 
# encoding: UTF-8# t=Struct.new('person',:name,:age)#算是元编程?t=Struct.new('Topic',:name,:replies) #Topic一定得是大写,包括类也是一样,强制性的约定p t     # => Struct::Topict1=t.new('first',['good','not bad!','nice!'])t2=t.new('second',['不错','好','OK'])topics=[t1,t2]p topics    #中文使用p来输出的时候显示的是其unicode编码    # => [#
, #
]p topics[0].name # => "first" 正是动态性的体现,只要有name就能显示p topics[1].replies # => ["\u4E0D\u9519", "\u597D", "OK"]
 
 

转载于:https://www.cnblogs.com/angestudy/archive/2012/11/01/2750245.html

你可能感兴趣的文章
20145104张家明 《Java程序设计》第4周学习总结
查看>>
CS 1037 A - Assessment
查看>>
夜神安卓模拟器怎么清除数据
查看>>
解决IE6不支持position:fixed;的问题
查看>>
理解jquery的$.extend()、$.fn和$.fn.extend()的区别及用法
查看>>
make install fping
查看>>
面试笔试题
查看>>
#loj3051 [十二省联考2019] 皮配
查看>>
MySql可视化工具MySQL Workbench使用教程
查看>>
个人站立会议第二阶段07
查看>>
云时代架构阅读笔记五——Web应用安全
查看>>
IOS 单击手势和cell点击冲突
查看>>
学习_HTML5_day3
查看>>
计算机网络与应用第二次笔记
查看>>
Django之ORM查询
查看>>
学习python第七天
查看>>
Flask基础(07)-->正则自定义转换器
查看>>
网站架构模式(二)
查看>>
【数据结构】算法 LinkList (Add Two Numbers)
查看>>
Bugtags:移动时代首选 Bug 管理系统
查看>>