欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

fff

程序员文章站 2022-03-02 23:13:20
...
package eee;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class ww {

public static void main(String[] args) {
List<String> list=new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
list.add("a");
list.add("d");
list.add("b");
list.add("c");
list.add("d");
list.add("a");
list.add("a");
list.add("b");
list.add("c");
list.add("c");
list.add("d");
list.add("d");
list.add("a");
list.add("c");
list.add("c");
list.add("d");
list.add("d");
list.add("c");
list.add("a");
list.add("b");
list.add("c");
list.add("c");
list.add("a");
list.add("d");
list.add("d");
list.add("c");
list.add("a");
list.add("b");
list.add("d");
list.add("b");
list.add("b");
list.add("c");
list.add("c");
list.add("d");
list.add("a");
list.add("b");
list.add("c");
list.add("d");
list.add("a");
list.add("b");
list.add("c");
list.add("d");
list.add("e");
list.add("b");
list.add("a");
list.add("b");
list.add("b");
list.add("b");
list.add("b");
list.add("b");
list.add("d");
list.add("a");
list.add("r");
list.add("b");
list.add("c");
list.add("b");//行
String[] message=new String[4];//总共那些字符串参与分组
message[0]="a";
message[1]="b";
message[2]="c";
message[3]="d";

int increase=0;
int rowNum=list.size()/message.length+1;
//String[][] arrays=new String[message.length][list.size()];
List<List<String>> contentCsv=new ArrayList<List<String>>();
contentCsv=testlist(message,  list);
@SuppressWarnings("unused")
int i333=0;
}
public static List<List<String>> testlist(String[] message, List<String> list) {
List<String> rowList=null;
List<List<String>> contentCsv=new ArrayList<List<String>>();
int firstFlag=0;//存上一个返回的数组下标
int lastFlag=0;//存下一个返回的数组下标
int i_count=0;
for (String str : list) {
if(printArray(message, str)!=-1) {//如果str存在这个数组里
if(i_count==0) {
rowList=new ArrayList<String>();
rowList.add(str);
firstFlag=printArray(message, str);
}else {
lastFlag=printArray(message, str);
if(lastFlag>firstFlag) {
rowList.add(str);
}else if(lastFlag==firstFlag){
//第一种情况默认取aa最后一个a
//rowList.set(rowList.size()-1, str);//加上这行默认aa取最后一个a,不加默认取第一个a
//第二种情况默认取aa第一个a
//rowList.set(rowList.size()-1, str);//加上默认aa取最后一个a,不加默认取第一个a
//第三种情况数组第一个取aa 第一个a,数组最后一个cc取最后一个c
if(lastFlag==0) {

}
if(lastFlag<message.length-1) {

}
if(lastFlag==message.length-1) {
rowList.set(rowList.size()-1, str);//加上默认aa取最后一个a,不加默认取第一个a
}


rowList.set(rowList.size()-1, str);
}else {
contentCsv.add(rowList);
//rowList.clear();
rowList=new ArrayList<String>();
rowList.add(str);
}
firstFlag=lastFlag;//互换值
}
i_count++;
}

}

return contentCsv;

}
public static boolean useList(String[] arr, String targetValue) {
    return Arrays.asList(arr).contains(targetValue);
}
public static int printArray(String[] array,String value){ 
        for(int i = 0;i<array.length;i++){ 
            if(array[i].equals(value)){ 
                return i; 
            } 
        } 
        return -1;//当if条件不成立时,默认返回一个负数值-1 
    } 
}