对一串用\":\"和\";\"拼接的汉字字符串排序
近日在项目中遇到一个需求,要求显示的下拉菜单select选项的汉字字符进行排序,项目是前后端分离Ajax交互的,前端页面初始化时请求后端拿到菜单数据。项目中的所有菜单数据均是后端提供的。 场景是后端请求数据库拿到了菜单的数据,是一段字符串:例如 : "1:阿里巴巴;2:京东;3:有赞;4:蚂蚁金服;5:网易;6:顺丰科技;7:蘑菇街;8:唯品会;9:拼多多;10:同花顺;" 实现按照各个公司的名称进行排序,要求"数字:公司"的对应不能改变,返回一个完整的字符串,这意味着排序后要重新拼接。 可以借助集合框架Map和List来完成功能: 输入字符串 将字符串以";"分割成字符串数组 公司名称与对应的值存入map 公司名称存入list 对list进行排序 根据排序后的list去map里查找映射进行字符拼接 返回字符串 ```java public static void main(String[] args) { String str = "1:阿里巴巴;2:京东;3:有赞;4:蚂蚁金服;5:网易;6:顺丰科技;7:蘑菇街;8:唯品会;9:拼多多;10:同花顺;"; System.out.println(Sort(str)); } static String Sort(String string){ String [] options = string.split(";");