「java集合分组方法」JAVA分组

博主:adminadmin 2023-01-03 21:51:10 694

本篇文章给大家谈谈java集合分组方法,以及JAVA分组对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java list 分组

public static String[] compareArray(String[] strs_a,String[] strs_b){

if(strs_a == null) return strs_b;

if(strs_b == null) return strs_a;

if(Arrays.equals(strs_a, strs_b)){

return null;

}

String tempStr = "";

if(strs_a[0].equals(strs_b[0])){

for(int i=0;istrs_a.length;i++){

if(i!=0){

tempStr+=strs_a[i]+",";

}

}

for(int i=0;istrs_b.length;i++){

if(i!=0){

tempStr+=strs_b[i]+",";

}

}

if(tempStr.endsWith(",")) tempStr = tempStr.substring(0, tempStr.length() - 1);

String[] tempArr = tempStr.split(",");

Arrays.sort(tempArr);

tempStr = "";

for(String str:tempArr){

tempStr += str + ",";

}

if(tempStr.endsWith(",")) tempStr = tempStr.substring(0, tempStr.length() - 1);

return new String[]{strs_a[0],tempStr};

}else{

return strs_b;

}

}

public static ListString[] getSortResult(ListString[] list){

ListString[] resultList = new ArrayListString[]();

if(list!=null list.size()0){

for(int i=0;ilist.size();i++){

String[] strs_i = list.get(i);

for(int j=0;i=jjlist.size();j++){

String[] strs_j=list.get(j);

String[] strs_x = compareArray(strs_i, strs_j);

if(strs_x != null){

if(!resultList.contains(strs_x)){

resultList.add(strs_x);

}

}

}

}

}

return resultList;

}

public static void main(String[] args) {

ListString[] list = new ArrayListString[]();

list.add(new String[]{"1","1"});

list.add(new String[]{"1","2"});

list.add(new String[]{"2","1"});

ListString[] rlist = getSortResult(list);

for(String[] items:rlist){

System.out.println();

for(int i=0;iitems.length;i++){

if(i!=0){

System.out.print(items[0] + " " + items[i]);

}

}

}

}

稍微写了下:那几个方法拷到一个类里就可以了,验证如下:

输入:list

list.add(new String[]{"1","1"});

list.add(new String[]{"1","2"});

list.add(new String[]{"2","1"});

输出结果为:

1 1,2

2 1

不知满足你的要求不?不满足接着追问

java List怎么分组去重

使用set集合啊,set集合是不能放重复的数据的。

Set hashSet = new HashSet(list);

然后在转过来就行了,set去除重复是调用了equals方法,所以你在Sh里面要重写equals方法,自定义比较的规则,例如:

public boolean equals(Object obj) {

if(obj==null) return false;

if(obj==this) return true;

Sh sh = (Sh)obj;

if(sh.getHm()==this.getHm()){

return true;

}

return false;

}

在Java中怎么把List集合中的对象分成每100条为一组

分组的话 可不可以考虑从0到99提取出来存到另一个List,然后100到199存到下一个List,依次类推呢?利用for循环应该能做到

java list分组

public static void main(String[] args) {

ListMapString, Object list=new ArrayListMapString,Object();

MapString, Object map=new HashMapString, Object();

map.put("id", 1);

map.put("name", "颜色");

map.put("default", "红");

list.add(map);

MapString, Object map3=new HashMapString, Object();

map3.put("id", 2);

map3.put("name", "颜色");

map3.put("default", "绿");

list.add(map3);

MapString, Object map4=new HashMapString, Object();

map4.put("id", 3);

map4.put("name", "颜色");

map4.put("default", "蓝");

list.add(map4);

MapString, Object map5=new HashMapString, Object();

map5.put("id", 4);

map5.put("name", "尺寸");

map5.put("default", "15");

list.add(map5);

MapString, Object map6=new HashMapString, Object();

map6.put("id", 5);

map6.put("name", "尺寸");

map6.put("default", "16");

list.add(map6);

String ys="颜色:";

String cc="尺寸:";

for (MapString, Object map2 : list) {

if ("颜色".equals(map2.get("name"))) {

ys+=map2.get("default")+"-"+map2.get("id")+" ";

}

if ("尺寸".equals(map2.get("name"))) {

cc+=map2.get("default")+"-"+map2.get("id")+" ";

}

}

System.out.println(ys);

System.out.println(cc);

}

Java 对数据分组

把从数据库读出来的ResultSet 传入这个方法

public static MapLong, ListLong orgnaizeData(ResultSet rs) {

MapLong, ListLong result = null;

try {

if (rs.getRow() 0) {

result = new HashMapLong, ListLong();

while (rs.next()) {

Long key = rs.getLong(1);

Long value = rs.getLong(2);

if (result.containsKey(key)) {

result.get(key).add(value);

} else {

ListLong valueList = new ArrayListLong();

valueList.add(value);

result.put(key, valueList);

}

}

}

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return result;

}

java集合遍历分组问题

是相同groupcode的放在同一个List中吧?

ListString group=new ArrayList();//存储groupcode

Map(String Listoption) map=new HashMap();

for(i=0;ilist=size();i++){

Listoption ops = map.get(list.get(i).getGroupcode());

if(ops != null ops.size != 0) {

ops.add(list.get(i));

}else {

group.add(list.get(i).getGroupcode());

map.put(list.get(i).getGroupcode(), list.get(i));

}

}

关于java集合分组方法和JAVA分组的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。