【MapSheep】
[好记性不如烂笔头]
posts - 228,comments - 15,views - 17万
  1. 方案一
// 测试
List<Object> arrayList = new ArrayList<>();
Collections.addAll(arrayList, 10, 11, 12);
AryLi.AL(arrayList);
// 输出: **10 11 12 2 3 4**
// 方案一
class AryLi {
//TODO 方案一, 就是将新的集合添加在原有集合之前
public static void AL(List list) {
List list1 = new ArrayList();
Collections.addAll(list1, 2, 3, 4);
ArrayList list2 = new ArrayList();
list2.addAll(list);
for (int i = 0; i < list1.size(); i++) {
//开始复制一个list的内容到另外一个list
list2.add(list1.get(i));
}
for (Object aList2 : list2) {
System.out.println(aList2);
}
}
}

  1. 方案二
// 输出: **[{"clazz":1,"name":"李四","sex":"女"},{"clazz":2,"name":"赵柳","sex":"女"},{"clazz":3,"name":"孙八","sex":"女"},{"clazz":1,"name":"张三","sex":"男"},{"clazz":2,"name":"王五","sex":"男"}]**
@Data
class Student {
private String name;
private String sex;
private Integer clazz;
public Student(String name, String sex, Integer clazz) {
this.name = name;
this.sex = sex;
this.clazz = clazz;
}
}
//TODO 方案二
public static void Docker() {
Student student1 = new Student("张三", "男", 1);
Student student2 = new Student("李四", "女", 1);
Student student3 = new Student("王五", "男", 2);
Student student4 = new Student("赵柳", "女", 2);
Student student5 = new Student("孙八", "女", 3);
List<Student> list = new ArrayList<>();
Collections.addAll(list, student1, student2, student3, student4, student5);
//根据性别分组 返回学生的Map Key是编号123 Value是学生分组好的对象
//.forEach(((k,v) -> System.out.println(k+":"+v)));
Map<String, List<Student>> collect = list.stream().collect(Collectors.groupingBy(Student::getSex));
//装载男生
ArrayList<Student> male = new ArrayList<>();
//装载女生
ArrayList<Student> female = new ArrayList<>();
for (Iterator<Map.Entry<String, List<Student>>> iterator = collect.entrySet().iterator(); iterator.hasNext(); ) {
Map.Entry<String, List<Student>> next = iterator.next();
if ("男".equals(next.getKey())) {
for (Student student : next.getValue()) {
male.add(student);
}
} else {
for (Student student : next.getValue()) {
female.add(student);
}
}
}
male.stream().forEach(System.out::println);
System.out.println("---------------------------------");
female.stream().forEach(System.out::println);
ArrayList<Object> menAndWomen = new ArrayList<>();
female.addAll(male); //把男生加入致女生集合
Collections.addAll(menAndWomen, JSON.toJSONString(female));
System.out.println("----------------输出先女后男-----------------");
menAndWomen.stream().collect(Collectors.toList()).forEach(System.out::println);
}

  1. 方案三
// 输出:
// **taskList
// **C011105212020800010**
// **C011105212020800009**
// **C011305282020800058**
// **C011305282020800055**
// **C011305282020800048**
// **C015505282020800046**
// **C015505282020800056**
// **C015505282020800063**
// **C011305282020800057**
// **C011305282020800059**
// **C011305282020800062**
// **C011305282020800063**
// **C011305282020800066**
// **C011305282020800068**
// **C011305282020800069**
// **C011305282020800074**
// **C025705282020800006**
// **C065105282020800077**
// **C011305282020800080**
// **C011305282020800084**
// **C011305282020800114**
// **C011305282020800117**
// **C015505282020800133**
// **C025305282020800010**
// **C015505282020800159**
// **C015405282020800012**
// **C015405282020800013**
// **C015405282020800014**
// **C015405282020800015**
// **C015405282020800016**
// **C015405282020800018**
// **C015405282020800019**
// **C015505282020800170**
// **C021105282020800011**
// **C021105282020800014**
// **C065105282020800197**
// **C021105282020800015**
// **C021105282020800016**
// **C065105282020800198**
// **C021105282020800018**
// **C015405282020800020**
// **C015405282020800022**
// **C015405282020800023**
// **C126205282020800001**
// **C015505282020800185**
// **C015505282020800186**
// **C021105282020800021**
// **C015405282020800024**
// **C015405282020800025**
// **C015405282020800026**
// **C045605282018800023**
// **C015105282020800005**
// **C015105282020800006**
// **C015105282020800007**
// **C015505282020800202**
// **C015505282020800228**
// **C315105282020800008**
// **C065105282020800305**
// **C010105072020800002**
// **C015505282020800273**
// **C025705282020800089**
// **C015505072020800010**
// **C015505282020800275**
// **C065105282020800312**
// **C315105072020800002**
// **C075105282020800042**
// **C075105282020800043**
// **C015505282020800279**
// **C075105282020800047**
// **C015405282020800027**
// **C015505282020800284**
// **C075105282020800050**
// **C065105282020800375**
// **C065105282020800381**
// **C011305282020800153**
// **C011305282020800154**
// **C075105282020800057**
// **C075105282020800059**
// **C011305072020800005**
// **C120105282020800012**
// **C021205282020800054**
// **C175205282020800009**
// **C021205282020800084**
// **C075105282020800073**
// **C015505282020800290**
// **C175205282020800018**
// **C175205282020800021**
// **C120105282020800019**
// **C175205282020800022**
// **C175205282020800023**
// **C171105282020800005**
// **C171105282020800006**
// **C200805282020800005**
// **C200805282020800006**
// **C200805282020800007**
// **C205105282020800003**
// **C205105282020800004**
// **C205105282020800008**
// **C026405282020800021**
// **C015405282020800040**
// **C065105282020800653**
// **C065105282020800654**
// **C065105282020800655**
// **C011305282020800163**
// **C120105282020800022**
// **C065105282020800670**
// **C011305282020800166**
// **C075105282020800075**
// **C065105282020800783**
// **C015405282020800047**
// **C065105282020800910**
// **C065105282020800954**
// **C065105282020800985**
// **C120105282020800059**
// **C065105282020801037**
// **C065105282020801070**
// **C120105282020800060**
// **C065105282020801212**
// **C065105282020801218**
// **C065105282020801220**
// **C065105282020801232**
// **C065105282020801236**
// **C120105282020800062**
// **C120105282020800063**
// **C120105282020800064**
// **C065105282020801262**
// **C065105282020801278**
// **C011305282022800562**
// **C011305282022800566**
// **C120105282020800067**
// **C120105282020800068**
// **C065105282020801430**
// **C120105282020800071**
// **C011305282020800189**
// **C035905282020800021**
// **C065105282020801451**
// **C015405282020800057**
// **C065105282020801458**
// **C035905282020800024**
// **C035905282020800025**
// **C011305282020800197**
// **C295105282020800007**
// **C015505282020800309**
// **C026405282020800024**
// **C015405282020800065**
//TODO 方案三
public static void RabbitMQ() {
String[] str = {"C015505282020800046",
"C011305282020800048",
"C015505282020800056",
"C015505282020800063",
"C011305282020800055",
"C011305282020800057",
"C011305282020800058",
"C011305282020800059",
"C011305282020800062",
"C011305282020800063",
"C011105212020800009",
"C011105212020800010",
"C011305282020800066",
"C011305282020800068",
"C011305282020800069",
"C011305282020800074",
"C025705282020800006",
"C065105282020800077",
"C011305282020800080",
"C011305282020800084",
"C011305282020800114",
"C011305282020800117",
"C015505282020800133",
"C025305282020800010",
"C015505282020800159",
"C015405282020800012",
"C015405282020800013",
"C015405282020800014",
"C015405282020800015",
"C015405282020800016",
"C015405282020800018",
"C015405282020800019",
"C015505282020800170",
"C021105282020800011",
"C021105282020800014",
"C065105282020800197",
"C021105282020800015",
"C021105282020800016",
"C065105282020800198",
"C021105282020800018",
"C015405282020800020",
"C015405282020800022",
"C015405282020800023",
"C126205282020800001",
"C015505282020800185",
"C015505282020800186",
"C021105282020800021",
"C015405282020800024",
"C015405282020800025",
"C015405282020800026",
"C045605282018800023",
"C015105282020800005",
"C015105282020800006",
"C015105282020800007",
"C015505282020800202",
"C015505282020800228",
"C315105282020800008",
"C065105282020800305",
"C010105072020800002",
"C015505282020800273",
"C025705282020800089",
"C015505072020800010",
"C015505282020800275",
"C065105282020800312",
"C315105072020800002",
"C075105282020800042",
"C075105282020800043",
"C015505282020800279",
"C075105282020800047",
"C015405282020800027",
"C015505282020800284",
"C075105282020800050",
"C065105282020800375",
"C065105282020800381",
"C011305282020800153",
"C011305282020800154",
"C075105282020800057",
"C075105282020800059",
"C011305072020800005",
"C120105282020800012",
"C021205282020800054",
"C175205282020800009",
"C021205282020800084",
"C075105282020800073",
"C015505282020800290",
"C175205282020800018",
"C175205282020800021",
"C120105282020800019",
"C175205282020800022",
"C175205282020800023",
"C171105282020800005",
"C171105282020800006",
"C200805282020800005",
"C200805282020800006",
"C200805282020800007",
"C205105282020800003",
"C205105282020800004",
"C205105282020800008",
"C026405282020800021",
"C015405282020800040",
"C065105282020800653",
"C065105282020800654",
"C065105282020800655",
"C011305282020800163",
"C120105282020800022",
"C065105282020800670",
"C011305282020800166",
"C075105282020800075",
"C065105282020800783",
"C015405282020800047",
"C065105282020800910",
"C065105282020800954",
"C065105282020800985",
"C120105282020800059",
"C065105282020801037",
"C065105282020801070",
"C120105282020800060",
"C065105282020801212",
"C065105282020801218",
"C065105282020801220",
"C065105282020801232",
"C065105282020801236",
"C120105282020800062",
"C120105282020800063",
"C120105282020800064",
"C065105282020801262",
"C065105282020801278",
"C011305282022800562",
"C011305282022800566",
"C120105282020800067",
"C120105282020800068",
"C065105282020801430",
"C120105282020800071",
"C011305282020800189",
"C035905282020800021",
"C065105282020801451",
"C015405282020800057",
"C065105282020801458",
"C035905282020800024",
"C035905282020800025",
"C011305282020800197",
"C295105282020800007",
"C015505282020800309",
"C026405282020800024",
"C015405282020800065"};
List<Task> tasksListRabbitMq = new ArrayList<>();
for (int i = 0; i < str.length; i++) {
Task task = new Task();
task.setAccidentNo(str[i]);
tasksListRabbitMq.add(task);
}
//要置顶的数据
List<TaskInfoVo> consultComplaintTaskInfoLists = new ArrayList<>();
TaskInfoVo infoVo1 = new TaskInfoVo();
infoVo1.setAccidentNo("C011305282020800048");
TaskInfoVo infoVo2 = new TaskInfoVo();
infoVo2.setAccidentNo("C011305282020800055");
TaskInfoVo infoVo3 = new TaskInfoVo();
infoVo3.setAccidentNo("C011305282020800058");
TaskInfoVo infoVo4 = new TaskInfoVo();
infoVo4.setAccidentNo("C011105212020800009");
TaskInfoVo infoVo5 = new TaskInfoVo();
infoVo5.setAccidentNo("C011105212020800010");
Collections.addAll(consultComplaintTaskInfoLists, infoVo1, infoVo2, infoVo3, infoVo4, infoVo5);
Set<String> caseNos = new HashSet<>();
for (TaskInfoVo taskInfoVo : consultComplaintTaskInfoLists) {
caseNos.add(taskInfoVo.getAccidentNo());
}
//将List中某些数据置顶
List<Task> taskList = tasksListRabbitMq;
for (int i = 0; i < taskList.size(); i++) {
Task task = taskList.get(i);
if (caseNos.contains(task.getAccidentNo())) {
//如果包含则删除并且使用temp变量接受放到第一个里面
Task temp = task;
taskList.remove(i);
taskList.add(0, temp);
}
}
System.err.println("taskList");
for (Task task : taskList) {
System.out.println(task.getAccidentNo());
}
}

  1. 方案四
// 输出: **[{"ifReport":"是","ziSuFlag":""},{"ifReport":"2","ziSuFlag":"2"},{"ifReport":"1","ziSuFlag":""}]**
// 实体类
@Data
class ClaimStatusDetailResult {
private String IfReport;
private String ZiSuFlag;
public ClaimStatusDetailResult(String ifReport, String ziSuFlag) {
IfReport = ifReport;
ZiSuFlag = ziSuFlag;
}
}
// TODO 方案四
public static void main(String[] args) {
List<ClaimStatusDetailResult> claimStatusList = new ArrayList<>();
ClaimStatusDetailResult result1 = new ClaimStatusDetailResult("1", "");
ClaimStatusDetailResult result2 = new ClaimStatusDetailResult("2", "2");
ClaimStatusDetailResult result3 = new ClaimStatusDetailResult("是", "");
Collections.addAll(claimStatusList, result1, result2, result3);
// TODO 方式四:符合条件的一条数据置顶展示
// 处理投诉上报/咨诉状态置顶展示
List<ClaimStatusDetailResult> claimStatusEditList = new ArrayList<>();
for (int i = 0; i < claimStatusList.size(); i++) {
ClaimStatusDetailResult claimStatusDetailResult = claimStatusList.get(i);
if ("是".equals(claimStatusDetailResult.getIfReport()) || StringUtils.isNotEmpty(claimStatusDetailResult.getZiSuFlag())) {
claimStatusEditList.add(0, claimStatusDetailResult);
} else {
claimStatusEditList.add(claimStatusDetailResult);
}
}
System.out.println(JSON.toJSON(claimStatusEditList));
}

  1. 方案五
// **输出: [{"state":2},{"state":4}]**
// 实体类
@Data
class UserInfoVo {
private Integer State;
}
@Data
class ContainerInstance {
private UserInfoVo userInfoVo;
}
// TODO 方案五
List<UserInfoVo> userInfoVoList = new ArrayList<>();
UserInfoVo infoVo01 = new UserInfoVo();
infoVo01.setState(4);
userInfoVoList.add(infoVo01);
UserInfoVo infoVo02 = new UserInfoVo();
infoVo02.setState(2);
userInfoVoList.add(infoVo02);
//TODO 方法五 处理在线人置顶展示
Collections.sort(userInfoVoList, Comparator.comparing(UserInfoVo::getState));
System.out.println(JSON.toJSON(userInfoVoList));
posted on   (Play)  阅读(273)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~

点击右上角即可分享
微信分享提示