mybatis plus selectBatchIds 查找无序,请问有什么更好的排序方法吗

        List<Long> chats = new ArrayList<>();
        for (ChatConversation chatConversation : chatConversations) {
            //发送方是当前用户 就取接收用户  接收方是当前用户 就取发送方用户
            Long toUser = chatConversation.getUser().equals(userId) ? chatConversation.getToUser() : chatConversation.getUser();
            chats.add(toUser);
        }
        //查询无序
        List<User> users = userMapper.selectBatchIds(chats);
        //排序
        Map<Long, User> userMap = users.stream().collect(Collectors.toMap(User::getId, user -> user));
        List<User> userList = new ArrayList<>();
        for (Long user : chats) {
            userList.add(userMap.get(user));
        }
        log.info("{}", userList);

userMapper.selectBatchIds(chats); 查出来的列表无序 有什么更好的方法 让结果依赖 chats 进行排序?
代码如何进一步优化

阅读 3.2k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题