我想在java中实现以下数组。
$values = array();
$values[]['monthName'] = 'April'
$values[]['Year'] = '2014'
$values[]['value'] = 4658;
答案 0 :(得分:1)
您可以将数组类型设为通用类似Object[]
,也可以将其设置为String []数组,稍后使用int i = Integer.parseInt(array[2]);
解析整数
答案 1 :(得分:1)
尝试使用interface Map<K, V>
Map<String, String> values = new HashMap<>();
values.put("monthName", "April");
values.put("Year", "2014");
values.put("value", "4658");
或创建实体类:
Map<Integer, Entity> values = new HashMap<>();
values.put(0, new Entity("April", "2014", 4658));
// $entry = $values[0]
Entity entity = values.get(0);
// foreach ($values as $key => $value) { }
for (Map.Entry<Integer, Entity> entry : values.entrySet()) { }
public class Entity {
private String monthName;
private String year;
private int value;
// ... constructor, getters and setters
}
答案 2 :(得分:0)
为什么不使用Map来达到效果?
Map<String, String> values = new HashMap<String, String>();
values.put("monthName", "April");
...
希望这可以帮到你。
答案 3 :(得分:0)
您可以在获取对象和转换时使用对象数组并小心。 以下是例如:
Object date[] = {"April","2014",12};
for (int i=0; i<date.length;i++) {
switch (i) {
case 0:
System.out.println((String)date[i]);
break;
case 1:
System.out.println((String)date[i]);
break;
case 2:
System.out.println((Integer)date[i]);
break;
default:
break;
}
}