私はRubyの新しいユーザーです。これまで変数(オブジェクト)クラスを変更するのは非常に簡単ですRubyでデータ型を保護する方法
#create an object
n=1
n.class
=> Fixnum
n="Abc"
n.class
=> String
変数のデータ型を保護する方法はありますか?たとえば、Javaの場合と同様に、変数が整数の場合、整数以外の値をとることはできません。
ありがとうございました!
私はRubyの新しいユーザーです。これまで変数(オブジェクト)クラスを変更するのは非常に簡単ですRubyでデータ型を保護する方法
#create an object
n=1
n.class
=> Fixnum
n="Abc"
n.class
=> String
変数のデータ型を保護する方法はありますか?たとえば、Javaの場合と同様に、変数が整数の場合、整数以外の値をとることはできません。
ありがとうございました!
できません。
Rubyでは、オブジェクトに対してしか操作できませんが、変数はオブジェクトではないため、その型について変数を問い合わせる方法はありません。
また、Rubyでは "type"という概念もありません。
まあ、タイプと呼ばれるものに依存します。しかし、確かにOPが想像するものではありません。 – ndn
OOでは、 "type"は基本的に "protocol"と同義です。したがって、基本的にはそれが理解できるメッセージのセットであり、どのように反応するかです。 –
値のタイプを確認できます。なぜあなたはそれをする必要がありますか? – ndn
いいえ、Rubyの変数でこれを行う方法はありません。最良の選択肢は、変数のタイプが任意の時点で明白であるように、すべてを読み取り可能にすることです。 – Ryan
私は、期待される変数が整数である場合、整数として残り、このクラスのすべてのメソッドが有効であることを確認したいだけです。メソッドを実行する前に、変数のデータ型を常にチェックするソリューションはありますか? – Ona