gpt4 book ai didi

java - 在 Java 中使用 bundle 传递哈希表

转载 作者:行者123 更新时间:2023-11-29 05:19:47 25 4
gpt4 key购买 nike

我有一个哈希表,这是我的代码

class Message
{
public String message, sender;
public Message (String msg, String from)
{
message = msg;
sender = from;
}
public String toString () { return sender+": "+message; }
}

我正在用这段代码定义我的表

Hashtable<String, List<Message>> table = new Hashtable<String, List<Message>>();

如何使用 bundle 传递这个表变量?例子我用这段代码传递字符串

    Bundle bundle = new Bundle();
bundle.putString("name", "test");

现在我想通过 bundle 传递 table.get("test")

我该怎么做?

最佳答案

你试过了吗Bundle#putSerializable()

如果您将 implements Serializable 添加到您的 Message 类,它应该可以工作,因为 Hashtable 等是可序列化的。

当然,要从 bundle 中取回 Hashtable,您必须强制转换它。

示例

Hashtable<String, List<Message>> originalTable = new Hashtable<String, List<Message>>();
// ... put some data into originalTable

// put originalTable into bundle
Bundle bundle = new Bundle();
bundle.putSerializable("table", originalTable);

// extract table from bundle
Hashtable<String, List<Message>> extractedTable = (Hashtable<String, List<Message>>)bundle.getSerializable("table");

// Now, extractedTable should contain same data as originalTable

关于java - 在 Java 中使用 bundle 传递哈希表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25221883/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com