Я делаю немного чтения на Ruby. Как упрощен язык. Я пытался найти это и сам разобраться. Я ищу некоторую помощь с объектами и как я добавляю к нему данные. Я хочу создать объект под названием Athlete, где я прочитал его в формате .txt или .csv с их номером и именем Jersey.Добавление в Ruby Objects
class Athlete
def setNumber (jNum)
@mynum = jNum
end
def getNumber
return @mynum
end
def setName (jName)
@myname = jName
end
def getName
return @myname
end
end
Является ли это тем, как я создал класс?
Затем я прочитал в файле:
myAthlete = Athlete.new
fileObj = File.new(uInput, "r")
while (line = fileObj.gets)
jData = line.split(" ")
myAthlete.setNumber(jData.at(0))
myAthlete.setName(jData.at(1))
end
fileObj.close
это где я начинаю получить немного потерял. Я знаю, что он отлично разделяет данные, потому что я уже пробовал это с помощью только Array.new. Говоря это, я пытаюсь сделать массив внутри класса Athlete. Может ли кто-нибудь помочь мне с этим?
Так что, если мой входной файл:
52 Sabathia
19 Tanaka
17 Holliday
24 Sanchez
Я хотел бы, чтобы ее разделить, а затем, если я позвоню позволяет говорить ухой myAthlete (1) было бы напечатать материал Танаки
Итак, я понимаю весь ваш код, как я могу получить информацию и сравнить спортсменов. Так что, если я хочу получить второго атлета (в моем «фиктивном» файле это будет «19 Танака»), какую строку я использую для этого? Что-то вроде спортсменов [1]? Я пробовал это, и я получаю '#' есть больше чисел, которые, как я предполагаю, является указателем на то, где сохраняются данные. –
Это просто обычный массив, поэтому 'athletes [1]' возвращает атлета в позиция индекса 1 (вторая запись). Это зависит от наличия двух строк в вашем файле, конечно. Если вы когда-либо были в тупике, попробуйте использовать 'p athletes' как быстрый способ показать вывод отладки на консоли или даже лучше использовать инструмент' irb' для запуска небольших фрагментов кода и проверки вывода. – tadman
Я добавил небольшой фрагмент, который определяет 'inspect', поэтому ваш вывод выглядит более дружелюбным. Эти числа являются 'object_id' объекта, о котором идет речь, это только формат проверки по умолчанию. – tadman