Я изучаю Java и пытаюсь обвести вокруг этих структур данных. Я прихожу из Python/PHP, поэтому я привык к динамическому масштабированию массивов на лету и возможности хранить несколько типов данных в одном массиве.Java - arraylist многомерных массивов или arraylist многомерных arraylists?
Как бы лучше всего сохранить эти данные? Скажем, я не знаю, сколько строк у меня будет, но я знаю, что каждая строка будет содержать 2 столбца данных. Один столбец представляет собой строку, а другой - двойной.
Пример в псевдо-иш коде, если я имел 3 строки:
array(array("description1", 10.00),
array("description2", 12.00),
array("description3", 14.00));
Тогда, я хочу, чтобы перебрать массив для обработки datawith что-то вроде:
foreach(rows as row){
myStringVal = row[0]; //on first iteration would be "description1"
myIntVal = row[1]; //on first iteration would be 10.00
... do something with the values ...
}
Я думаю Мне нужно создать arraylist, который содержит массив, но я не могу хранить как строки, так и парные в массиве java, так что я делаю? Вместо этого я использую карту и рассматриваю ее так, как если бы это был массив? Например, я создаю карту, где первый элемент является числовым идентификатором для каждой строки, второй элемент - это строковое значение, третий элемент - это двойное значение, а затем я использую цикл для увеличения счетчика и захвата каждой строки с карты, которая использует числовой идентификатор>
Действительно смущен относительно того, как это будет работать. Какие-либо предложения? Благодаря!
Ницца, очень нравится этот ответ тоже. Делает полный смысл. Хотел бы я дать два ответа. – user797963
+1 «Правильный» Java-стиль должен также реализовывать «equals() и hashcode()» и, возможно, toString(). – user949300
Не для объекта структуры. equals и hashcode необходимы только в том случае, если вы намереваетесь выполнить сопоставление/хеширование, которое мы не делаем в этом случае (они по умолчанию унаследованы от Object) –