我有一个对象列表(Slack Bolt 框架),其中一个动态附加到上游,然后传入数组列表。我需要取出这个键(它看起来像这样:
status_block_EPOCH
)但是当我尝试过滤时,我在 IntelliJ 的评估表达式中得到了未定义。我正在尝试这样的事情:
Map<String, Map<String, ViewState.Value>> blockValues = viewSubmissionRequest.getPayload().getView().getState().getValues();
blockValues.keySet().stream().filter(s -> s.startsWith("status_block")
这应该给我与此匹配的密钥(即
status_block_123646484568
),我可以使用它,但由于某种原因我无法让它工作。我在这里做错了什么?
希望您以这种方式收集过滤后的值?
List<String> keys = blockValues.keySet().stream().filter(s -> s.startsWith("status_block")).collect(Collectors.toList());
现在,这个
keys
列表将包含您的密钥。
问题中缺少这部分,所以我无法确定。