我对我的应用程序有点困惑,并且不太确定要搜索什么。所以我希望这里有人可以帮助我。
我有一个列表 String
s,看起来像这样:
Cake;carrot
Cake;apple
Cake;spicy
Pizza;pepperoni
Pizza;mozzarella
...等等。我想把这些数据放入 Map<String, List<String>>
,其中Cake
和Pizza
将在我的Map
中补上 key 。有[carrot, apple, spicy]
如Cake
的值,和 [pepperoni, mozzarella]
如Pizza
的值(value)观。
我怎样才能实现这个目标?预先感谢您的帮助。
最佳答案
只需使用String.split()
迭代您的列表
ArrayList<String> myList;
HashMap<String, List<String>> myMap = new HashMap<>();
for(String s : myList)
{
String[] split = s.split(";");
List<String> bucket = myMap.get(split[0]);
if(bucket == null)
{
bucket = new ArrayList<String>();
myMap.put(split[0], bucket);
}
bucket.add(split[1]);
}
关于java - 如何将字符串拆分为包含值列表的映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36740710/