四面观望,无法找到正确答案来解决我面临的问题。我想访问并检查一个哈希值内的值。代码如下...访问并检查散列内的值
class Bank
class AccountMaker
attr_accessor :account_number, :name, :balance, :pin
def initialize(account_number, name, balance, pin)
@account_number = account_number
@name = name
@balance = balance
@pin = pin
end
end
attr_accessor :int_account_number, :int_account_pin
def initialize
@accounts = {}
@int_account_number = int_account_number
@int_account_pin = int_account_pin
end
def add_account(account_number, name, balance, pin)
@accounts[account_number] = AccountMaker.new(account_number, name, balance, pin)
end
def login_screen
def account_number_login
puts "Please enter your 7 digit account number."
account_number = gets.chomp
int_account_number = account_number.to_i
if @accounts.has_key?(int_account_number) and (/^\w{7}$/ === account_number)
thank_you_msg()
pin_login(int_account_number)
else
error_msg()
account_number_login()
end
end
def pin_login(int_account_number)
puts "Please enter your 4 digit pin."
account_pin = gets.chomp
int_account_pin = account_pin.to_i #May have to use this later
#puts int_account_number, int_account_pin #Used to check if variables come through
if (What Should go here?) == int_account_pin #(/^\d{4}$/ === account_pin)
thank_you_msg
main_menu()
else
error_msg()
pin_login(int_account_number)
end
end
account_number_login()
end
def main_menu
end
end
我的问题是如何访问针的哈希值用户inputed账号(键)并检查它是否在用户输入相匹配?哈希值包含在pin下的值,但我在尝试访问和比较时遇到了最困难的时间。
真棒我欣赏的帮助和所有的信息。如果它不明显,我是新来的Ruby。再次感谢 – JCD