从字符串数组创建对象数组
Make array of objects from array of strings
我有一个从文件中读取的字符串数组。
contents = File.readlines('foo.txt')
我可以用字符串创建一些对象
my_foo = Foo.new("some_text")
我需要制作一个对象数组 Foo
,由字符串数组 contents
制作。我该怎么做?
这是您要找的吗?
contents.map {|i| Foo.new i}
可能值得一提的是,File.readlines
会将所有内容读入内存,这可能会导致大文件出现内存问题。考虑使用此代码:
File.foreach('foo.txt').map do |line|
Foo.new(line)
end
它逐行读取文件,几乎与您的代码一样快,但更安全。
我有一个从文件中读取的字符串数组。
contents = File.readlines('foo.txt')
我可以用字符串创建一些对象
my_foo = Foo.new("some_text")
我需要制作一个对象数组 Foo
,由字符串数组 contents
制作。我该怎么做?
这是您要找的吗?
contents.map {|i| Foo.new i}
可能值得一提的是,File.readlines
会将所有内容读入内存,这可能会导致大文件出现内存问题。考虑使用此代码:
File.foreach('foo.txt').map do |line|
Foo.new(line)
end
它逐行读取文件,几乎与您的代码一样快,但更安全。