try 合并两个数据,一个用于电影,另一个用于流派,只有在这两个属性的ID相同的情况下.
两者都有id,名字段,请考虑电影中的id是PK,流派使用它作为FK 如下图所示.
List<Movie> movies = new ArrayList<>();
movies.add(new Movie(1, "Titanic"));
movies.add(new Movie(2, "Batman"));
movies.add(new Movie(3, "Silence of the Lambs"));
movies.add(new Movie(4, "1917"));
movies.add(new Movie(5, "Fight Club"));
movies.add(new Movie(6, "Inception"));
movies.add(new Movie(7, "The Godfather"));
movies.add(new Movie(8, "Peral Harbor"));
List<Genres> genres = new ArrayList<>();
genres.add(new Genres(1, "Drama"));
genres.add(new Genres(4, "Drama"));
genres.add(new Genres(8, "Drama"));
genres.add(new Genres(7, "Drama"));
genres.add(new Genres(2, "Action"));
genres.add(new Genres(5, "Action"));
genres.add(new Genres(6, "SF"));
genres.add(new Genres(3, "Thriller"));
genres.add(new Genres(5, "Thriller"));
genres.add(new Genres(5, "Crime"));
genres.add(new Genres(16, "Comedy"));
genres.add(new Genres(3, "Horror"));
genres.add(new Genres(1, "Disaster"));
genres.add(new Genres(7, "Noir"));
genres.add(new Genres(1, "Romance"));
...
我想把他们联系在一起,如果ID是相等的,并把流派array.
结果应该如下所示:
result: [
{"id": 1, "name": "Titanic", "genres": ["Drama", "Disaster", "Romance"] },
...
{"id": 5, "name": "Fight Club", "genres": ["Action", "Thriller", "Crime"] },
]
几乎没有使用Stream的 idea ,也可能不使用.
先谢谢你.