ReviewApp
def post_review
post = {}
puts "Bitte geben Sie ein Genre ein:"
post[:genre] = gets.chomp
puts "Bitte geben Sie einen Titel ein:"
post[:title] = gets.chomp
puts "Bitte geben Sie Ihre Gedanken ein:"
post[:review] = gets.chomp
line = "---------------------------"
#Eine Bewertung zeichnen
puts "Genre: #{post[:genre]}\n#{line}"
puts "Titel: #{post[:title]}\n#{line}"
puts "Impressionen:\n#{post[:review]}\n#{line}"
#Zum Array-Objekt hinzufügen
posts << post
end
↑ In diesem Fall ist posts
in der post_review-Methode
nicht definiert, also NG.
Grundsätzlich können nur die in der Methode definierten Variablen verwendet werden.
Um dies verfügbar zu machen, verwenden wir ein sogenanntes Argument.
ReviewApp
def post_review (a_posts)
post = {}
puts "Bitte geben Sie ein Genre ein:"
post[:genre] = gets.chomp
puts "Bitte geben Sie einen Titel ein:"
post[:title] = gets.chomp
puts "Bitte geben Sie Ihre Gedanken ein:"
post[:review] = gets.chomp
line = "---------------------------"
#Eine Bewertung zeichnen
puts "Genre: #{post[:genre]}\n#{line}"
puts "Titel: #{post[:title]}\n#{line}"
puts "Impressionen:\n#{post[:review]}\n#{line}"
#Zum Array-Objekt hinzufügen
a_posts << post
# a_gibt Beiträge an den Methodenaufrufer zurück
return a_posts
end
#Generieren von Array-Objektbeiträgen
posts = []
while true do
#Menü anzeigen
puts "Anzahl der Bewertungen: 0"
puts "[0]Ich schreibe eine Bewertung"
puts "[1]Bewertungen lesen"
puts "[2]Beenden Sie die App"
input = gets.to_i
if input == 0 then
posts = post_review(posts) # post_Überprüfungsmethode aufrufen
elsif input == 1 then
read_reviews # read_Rufen Sie die Überprüfungsmethode auf
elsif input == 2 then
end_program # end_Rufen Sie die Programmmethode auf
else
exception #Rufen Sie die Ausnahmemethode auf
end
end
Der Aufrufer sollte diesen Rückgabewert den variablen Posts zuweisen. Ich konnte Überprüfungsinformationsbeiträge zu den Arrayobjektbeiträgen hinzufügen, die Überprüfungen mithilfe von Argumenten verwalten.
① Rufen Sie die post_review-Methode mit posts = post_review (posts) mit posts als Argument auf
② Kopieren Sie in der post_review-Methode Beiträge in eine Variable namens a_posts.
③ Fügen Sie a_posts in der Methode post_review einen Hash hinzu und geben Sie a_posts zurück
④ Ersetzen Sie die zurückgegebenen a_posts durch Beiträge durch posts = post_review (posts)
<Regeln für die Verwendung von Argumenten>
Ausführen einer Methode mit einem Argument
def multi(number) #In der Methodendefinition wird number als formales Argument verwendet.
puts number * number
end
puts "Bitte geben Sie eine Nummer ein"
value = gets.to_i
multi(value) #Bei der tatsächlichen Verwendung der Multi-Methode wird der Wert anstelle der vorherigen Zahl platziert.
Recommended Posts