当前位置: 首页 > news >正文

怎么做一个单页的网站答题app制作教程

怎么做一个单页的网站,答题app制作教程,网站个性化,做网站需要数据库支持操作#xff1a; 根据指定字段#xff0c;获取两个对象集合的交集、补集、并集等将对象中的多个字段值#xff0c;抽取到一个List中 import java.lang.reflect.Field; import java.util.*; import java.util.concurrent.ConcurrentHashMap; import java.util.function…支持操作 根据指定字段获取两个对象集合的交集、补集、并集等将对象中的多个字段值抽取到一个List中 import java.lang.reflect.Field; import java.util.*; import java.util.concurrent.ConcurrentHashMap; import java.util.function.Function; import java.util.function.Predicate; import java.util.stream.Collectors;/*** DescriptionList工具类。用于处理两个列表的交集、并集、差集等操作。** author jiangniao* date 2024-3-22*/ public class ListUtil {private ListUtil() {}/*** 提取多个字段的值到一个list** param list 对象集合* param fieldName 需要提取的字段名* return*/public static ListString extractFieldsToList(List? list, String... fieldName) {return list.stream().flatMap(item-Arrays.stream(fieldName).map(field-BeanUtils.getSimpleProperty(item, field))).collect(Collectors.toList());}/*** 根据指定字段找出两个列表的交集。** param list1* param list2* param fields* param T* return*/public static T ListT intersection(ListT list1, ListT list2, String... fields) {return list1.stream().filter(item1-containsWithFields(list2, item1, fields)).collect(Collectors.toList());}/*** 根据指定字段找出两个列表的并集** param list1* param list2* param fields* param T* return*/public static T ListT union(ListT list1, ListT list2, String... fields) {ListT union new ArrayList(list1);union.addAll(list2.stream().filter(item-!containsWithFields(list1, item, fields)).collect(Collectors.toList()));return union;}/*** 根据指定字段找出两个列表的差集。list1中有list2中没有的元素** param list1* param list2* param fields* param T* return 返回list1过滤后的数据*/public static T ListT difference(ListT list1, ListT list2, String... fields) {return list1.stream().filter(item-!containsWithFields(list2, item, fields)).collect(Collectors.toList());}/*** 找出两个列表的差集。list1中有list2中没有的元素。* p用于非Object对象的比较比如String、Integer等** param list1* param list2* param T* return 返回list1过滤后的数据*/public static T ListT difference(ListT list1, ListT list2) {list1.removeAll(list2);return list1;}/*** 辅助方法判断列表中是否包含指定对象** param list* param item* param fields* param T* return*/private static T boolean containsWithFields(ListT list, T item, String... fields) {return list.stream().anyMatch(item2-matchesFields(item, item2, fields));}/*** 辅助方法判断两个对象的指定字段是否相等** param item1* param item2* param fields* param T* return*/private static T boolean matchesFields(T item1, T item2, String... fields) {try {for (String field : fields) {Field declaredField1 item1.getClass().getDeclaredField(field);Field declaredField2 item2.getClass().getDeclaredField(field);declaredField1.setAccessible(true);declaredField2.setAccessible(true);if (!Objects.equals(declaredField1.get(item1), declaredField2.get(item2))) {return false;}}return true;} catch (Exception e) {throw new RuntimeException(e);}}/*** 根据指定字段对列表进行去重** param list* param fields* param T* return*/public static T ListT distinctByFields(ListT list, String... fields) {return list.stream().filter(distinctByKey(t-getKey(t, fields))).collect(Collectors.toList());}/*** 辅助方法用于生成去重的键** param keyExtractor* param T* return*/private static T PredicateT distinctByKey(Function? super T, ? keyExtractor) {MapObject, Boolean seen new ConcurrentHashMap();return t-seen.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) null;}/*** 辅助方法生成由指定字段的值组成的键** param item* param fields* param T* return*/private static T String getKey(T item, String... fields) {StringBuilder key new StringBuilder();try {for (String field : fields) {Field declaredField item.getClass().getDeclaredField(field);declaredField.setAccessible(true);key.append(declaredField.get(item)).append(-);}} catch (Exception e) {throw new RuntimeException(e);}return key.toString();}}
http://www.dnsts.com.cn/news/187354.html

相关文章:

  • 公司网站开发项目管理制度自己设置网站
  • 山东省住房城乡建设厅查询网站大连网站制作中企动力
  • html5网站有点如何用ae做模板下载网站
  • 钓鱼网站网址大全wordpress cpu 100
  • 甘肃建设职工教育培训中心网站唐山市城乡建设网站
  • 苏州网站推广建设中铁建设集团有限公司总承包公司
  • 手机网站 代码格式做动画在线观看网站
  • 网站做ppt模板域名解析网站建设
  • 江西省城乡建设厅建设网站阿里云云主机做网站
  • 建设中心小学网站开发商不给办房产证怎么办
  • 做公益做的好的的网站肇庆住房建设部网站
  • 增城营销网站建设哪里能找到网站
  • 网站推广怎么推网站标签图标代码
  • 山东三强建设咨询有限公司网站企业形象设计包括哪些方面
  • 深圳企业黄页网站wordpress acf 收费
  • 成都快速建站模板什么是企业形象设计
  • 网站中如何做图片轮播沈阳高端关键词优化
  • 会泽网站建设服装网站建设价格
  • 哪些网站可以接设计的单子做湘潭网络营销
  • 门户网站编辑流程二建注册进度查询系统
  • 好看的网站链接哪些做调查问卷挣钱的网站
  • 海南省海口市网站建设wordpress 添加菜单
  • 优秀网站设计书籍刷赞网站推广qq免费
  • 公司网站 百度电商erp软件
  • 建设企业网银u盾网站打不开做网站买什么品牌笔记本好
  • 宁波企业网站搭建价格郑州又上热搜了
  • 做网站系统用什么语言百度竞价推广的优势
  • 企业网站管理系统最新4湖南岚鸿牛x1 0广州网站建设一般多少钱
  • 网站建设发展方向怎么写专做高中知识的网站
  • 网站 推广方案宿豫建设局网站