在Java中,是否有任何类似于javascript对象类型的数据类型,我都可以像在javascript中那样存储东西。
这是一个对象,其中包含三个数组:
var myObject = {"smsBody": [], "totalSMS": [], "sender": []};
我可以将数据推送到该对象内的单个数组项中:
myObject.totalSMS.push("5");
myObject.totalSMS.push("10");
然后可以遍历它们以从数组项中获取全部数据:
for (var i = 0; i < myObject.totalSMS.length; i++) {
alert(myObject.totalSMS[i]);
}
Java plz中有类似的东西吗?
最佳答案
这与您在Java中所发布的代码尽可能接近:
Map<String, List<String>> myObject = new HashMap<>();
myObject.put("smsBody", new ArrayList<>());
myObject.put("totalSMS", new ArrayList<>());
myObject.put("sender", new ArrayList<>());
List<String> totalSMS = myObject.get("totalSMS");
totalSMS.add("5");
totalSMS.add("10");
for (String s : totalSMS) {
System.out.println(s);
}
请注意,有一些小的差异,例如您不能使用
myObject.totalSMS
之类的东西,而是需要使用字符串"totalSMS"
作为Map的键。 Java还有一个更方便的for-each循环,这意味着您不需要遍历元素的索引并分别访问它们(尽管您仍然可以按元素索引遍历列表)。