Java:数据类型类似于javascript对象?

标签 java javascript android

在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中有类似的东西吗?

最佳答案

这与您在 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 的 key 。 Java 还有一个更方便的 for-each 循环,这意味着您不需要迭代元素的索引并单独访问它们(尽管如果您愿意,您仍然可以通过元素索引循环访问列表)。

关于Java:数据类型类似于javascript对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23467823/

相关文章:

java - 我怎样才能专注于谷歌地图的某个部分

java - 消息[0]在消息数组中是最终的吗

java - 快速而肮脏的 SQL 字符串转义

javascript - Ionic 3 Sqlite 返回空值

javascript - Sails.js - Controller 问题

android - MediaRecorder.AudioSource.DEFAULT 阻止通话中的音频

java - 常规Exp : Matcher: how to get last occurence in the group

javascript - 为什么域在谷歌分析中被散列?

java - 使用 JSON 数据绘制线图,Android

java - Android - 一段时间后获取位置