簡體   English   中英

如何在ruby中打印Fixnum類的所有方法

[英]How to print all methods of Fixnum class in ruby

我想在ruby中打印Fixnum類的所有方法。 當我輸入Fixnum.methods它給出了我不理解的這種輸出。

[:allocate, :superclass, :<=>, :module_exec, :class_exec, :<=, :>=, :==, :===, :include?, :included_modules, :ancestors, :name, :public_instance_methods, :instance_methods, :private_instance_methods, :protected_instance_methods

您可能想要實例方法:

Fixnum.instance_methods

要過濾Object的那些:

Fixnum.instance_methods - Object.instance_methods

考慮安裝pry

pry是一個更好的irb版本,允許瀏覽類和對象“好像它們是文件夾”。 例如,參見

$ pry
[1] pry(main)> ls Fixnum
Object.methods: yaml_tag
Fixnum#methods: 
  %   +   <    ==   >>   bit_length  fdiv       odd?  to_f   ~
  &   -   <<   ===  []   div         inspect    ord   to_s 
  *   -@  <=   >    ^    divmod      magnitude  size  zero?
  **  /   <=>  >=   abs  even?       modulo     succ  |    
[2] pry(main)>
...

這是一個ruby數組,方法名稱用符號表示(另一個ruby東西)。 你可以做到

Fixnum.methods.each { |method| puts method }

來自ruby 2.4.0及更高版本

Integer.methods.each { |method| puts method }

您獲得的輸出是一組方法名稱作為符號。 所以,如果你想打印它們就像這樣:

Fixnum.methods.each { |method| puts method }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM