Простая структура данных в Ruby, эквивалентная Java - PullRequest
3 голосов
/ 22 августа 2010

В Java, если я хочу простую структуру данных, я бы просто объявил ее в классе примерно так:

class MySimpleStructure{
   int data1;
   int data2;
   MyOtherDataStructure m1;
}

Тогда я бы позже использовал это в своей программе,

MySimpleStructure s1 = new MySimpleStructure();
s1.data1 = 19;
s1.m1 = new MyOtherDataStructure();

Как сделать эквивалентную реализацию в Ruby.

Ответы [ 2 ]

7 голосов
/ 22 августа 2010
class MySimpleStructure
  attr_accessor :data1, :data2, :m1
end

s1 = MySimpleStructure.new
s1.data1 = 19
s1.m1 = MyOtherDataStructure.new
5 голосов
/ 23 августа 2010

В большинстве кодов Ruby хэш используется как простые структуры данных.Это не так эффективно, как это, и нет никаких определений полей в этих хешах, но они передаются очень похоже на структуру в C или простые классы, подобные этому в Java.Конечно, вы можете просто создать свой собственный класс следующим образом:

class MyStruct
  attr_accessor :something, :something_else
end

Но в Ruby также есть класс Struct, который можно использовать.Вы не видите этого много.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...