【问题标题】:google protocol buffers: how to define message contains ArrayList<ArrayList<String>> in proto file谷歌协议缓冲区:如何在 proto 文件中定义消息包含 ArrayList<ArrayList<String>>
【发布时间】:2018-11-09 18:55:39
【问题描述】:

ArrayList 对应重复字符串:

message m1 {
    repeated string mylist = 1;
}

如何在message中定义ArrayList>? 谢谢!

【问题讨论】:

标签: java rpc grpc protocol-buffers


【解决方案1】:

您需要另一条消息来表示内部列表。

message M1 {
  repeated M2 mylist = 1;
}

message M2 {
  repeated string mylist = 1;
}

当然,您可以向 M2 添加任意数量的字段,并且您需要一些单独的转换逻辑来将 List&lt;M2&gt; 组装成 ArrayList&lt;ArrayList&lt;String&gt;&gt;

您甚至可能想要创建一个可重用的消息来表示字符串列表:

message M1 {
  repeated StringList mylist = 1;
}

message StringList {
  repeated string value = 1;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-13
    • 2013-04-26
    • 1970-01-01
    • 2017-05-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多