package com.yanzuoguang.util.vo; import com.yanzuoguang.util.helper.StringHelper; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; /** * 行映射 * * @author 颜佐光 */ public class MapRow extends LinkedHashMap<String, Object> { /** * 删除所有的值,当值等于默认值时 * * @param rows 行信息 * @param columns 列信息 * @param defaultValues 默认值集合,默认包含空值和空字符串 */ public static <T> void removeRowColumnOrDefaultValue(List<MapRow> rows, List<String> columns, List<T> defaultValues) { List<String> removeColumns = new ArrayList<>(); for (String column : columns) { boolean isDefaultValue = true; for (MapRow row : rows) { Object value = row.get(column); if (StringHelper.isEmpty(value) || defaultValues.contains(value)) { } else { isDefaultValue = false; } } if (isDefaultValue) { removeColumns.add(column); } } for (MapRow row : rows) { for (String removeColumn : removeColumns) { row.remove(removeColumn); } } } }