-
Notifications
You must be signed in to change notification settings - Fork 0
/
example_user.rb
58 lines (44 loc) · 1.06 KB
/
example_user.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
class User
attr_accessor :name, :email
def initialize(attributes = {})
@name = attributes[:name]
@email = attributes[:email]
end
def formatted_email
"#{@name} <#{@email}>"
end
end
# problem 4.1
def string_shuffle(s)
s.split('').shuffle.join
end
# problem 4.2
class String
def shuffle
self.split('').shuffle.join
end
end
# problem 4.3
def hashes
person1 = { :first => "James", :last => "Potter" }
person2 = { :first => "Lily", :last => "Evans" }
person3 = { :first => "Harry", :last => "Potter" }
params = {}
params[:father] = person1
params[:mother] = person2
params[:child] = person3
puts "#{params[:father][:first]} #{params[:father][:last]}"
puts "#{params[:mother][:first]} #{params[:mother][:last]}"
puts "#{params[:child][:first]} #{params[:child][:last]}"
end
if __FILE__ == $0
puts "Problem 4.1"
puts string_shuffle("Harry Potter")
puts "Problem 4.2"
puts "Harry Potter".shuffle
puts "Problem 4.3"
hashes
puts "Problem 4.4"
puts 'Merge combines two different hash objects together'
puts '{ :a => "abc" }.merge({ :b => "xyz"}'
end