二维数组的遍历

hl648777580 2016-09-29 05:57:58
层次 名称 关联_编号 关联_名称
1 第一级
2 第二级1
3 no1 第二级1
3 no1 第二级1
3 no1 第二级1
2 第二级2
3 no2 第二级2
3 no2 第二级2
3 no2 第二级2

这是解析excel的时候获得二维数组,(不知道解析excel还可以取得什么格式数据)
要这个二维数组,如何把值放入一个实体类中

层级代表他们的关系,层次2就是关联_名称

这里不重复的对象应该就有两个:第一级 no1 第二级1
第一级 no2 第二级2


我是想把它存到对象在存数据库,或者有其他办法不重复的插入数据库么
...全文
683 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hl648777580 2016-10-07
  • 打赏
  • 举报
回复
引用 4 楼 hl648777580 的回复:
引用 1 楼 wupeng0129 的回复:
extjs可以解决
很感谢在下班之际还写这么多,这个表格的四列数据只是我需要的,中间还有很多字段我不需要,可能是空白,直接通过set值不行,下标不能确定值,我确是想将数据放在一个对象中,封装后入库比较方便。但是是将有层级关系的数据封装成一个对象,而不是将一列当成一个对象
不好意思,回复错人了,想请教一下如何用extjs来解决
hl648777580 2016-10-07
  • 打赏
  • 举报
回复
引用 2 楼 u014797658 的回复:

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

/**
 * Created by zhangshouzheng on 2016/9/30.
 */
public class TransferData {
    private static String[][]data = new String[9][4];
    static {
        data[0] = new String[]{"1","第一级","",""};
        data[1] = new String[]{"2","第二级1","",""};
        data[2] = new String[]{"3","","no1","第二级1"};
        data[3] = new String[]{"3","","no1","第二级1"};
        data[4] = new String[]{"3","","no1","第二级1"};
        data[5] = new String[]{"2","第二级2","",""};
        data[6] = new String[]{"3","","no2","第二级2"};
        data[7] = new String[]{"3","","no2","第二级2"};
        data[8] = new String[]{"3","","no2","第二级2"};
    }
    public static void main(String[] args) {
        List<DataPo> dataPoList = new ArrayList<DataPo>();
        System.out.println("层次\t名称\t关联_编号\t关联_名称");
        for (String[] outer:data){
            System.out.println(outer[0]+"\t\t"+outer[1]+"\t\t"+outer[2]+"\t\t"+outer[3]);
            //赋值到DataPo
            DataPo dataPo = new DataPo();
            dataPo.setLevel(outer[0]);
            dataPo.setName(outer[1]);
            dataPo.setRelate_id(outer[2]);
            dataPo.setRelate_name(outer[3]);
            dataPoList.add(dataPo);
        }
        System.out.println("这里是分界线----------------------");
        for (DataPo po: dataPoList) {
            System.out.println(po.getLevel()+"\t\t"+po.getName()+"\t\t"+po.getRelate_id()+"\t\t"+po.getRelate_name());
        }
    }
    static class DataPo{
        //层次
        private String level;
        //名称
        private String name;
        //关联_编号
        private String relate_id;
        //关联_名称
        private String relate_name;

        public String getLevel() {
            return level;
        }

        public void setLevel(String level) {
            this.level = level;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public String getRelate_id() {
            return relate_id;
        }

        public void setRelate_id(String relate_id) {
            this.relate_id = relate_id;
        }

        public String getRelate_name() {
            return relate_name;
        }

        public void setRelate_name(String relate_name) {
            this.relate_name = relate_name;
        }
    }
}
用对象封装下~
很感谢在下班之际还写这么多,这个表格的四列数据只是我需要的,中间还有很多字段我不需要,可能是空白,直接通过set值不行,下标不能确定值,我确是想将数据放在一个对象中,封装后入库比较方便。但是是将有层级关系的数据封装成一个对象,而不是将一列当成一个对象
hl648777580 2016-10-07
  • 打赏
  • 举报
回复
引用 1 楼 wupeng0129 的回复:
extjs可以解决
很感谢在下班之际还写这么多,这个表格的四列数据只是我需要的,中间还有很多字段我不需要,可能是空白,直接通过set值不行,下标不能确定值,我确是想将数据放在一个对象中,封装后入库比较方便。但是是将有层级关系的数据封装成一个对象,而不是将一列当成一个对象
木_古 2016-10-01
  • 打赏
  • 举报
回复
大神膜拜~~~~~~~~~~~~~~~~~~~~~~~~~~
java技术之路 2016-09-30
  • 打赏
  • 举报
回复

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

/**
 * Created by zhangshouzheng on 2016/9/30.
 */
public class TransferData {
    private static String[][]data = new String[9][4];
    static {
        data[0] = new String[]{"1","第一级","",""};
        data[1] = new String[]{"2","第二级1","",""};
        data[2] = new String[]{"3","","no1","第二级1"};
        data[3] = new String[]{"3","","no1","第二级1"};
        data[4] = new String[]{"3","","no1","第二级1"};
        data[5] = new String[]{"2","第二级2","",""};
        data[6] = new String[]{"3","","no2","第二级2"};
        data[7] = new String[]{"3","","no2","第二级2"};
        data[8] = new String[]{"3","","no2","第二级2"};
    }
    public static void main(String[] args) {
        List<DataPo> dataPoList = new ArrayList<DataPo>();
        System.out.println("层次\t名称\t关联_编号\t关联_名称");
        for (String[] outer:data){
            System.out.println(outer[0]+"\t\t"+outer[1]+"\t\t"+outer[2]+"\t\t"+outer[3]);
            //赋值到DataPo
            DataPo dataPo = new DataPo();
            dataPo.setLevel(outer[0]);
            dataPo.setName(outer[1]);
            dataPo.setRelate_id(outer[2]);
            dataPo.setRelate_name(outer[3]);
            dataPoList.add(dataPo);
        }
        System.out.println("这里是分界线----------------------");
        for (DataPo po: dataPoList) {
            System.out.println(po.getLevel()+"\t\t"+po.getName()+"\t\t"+po.getRelate_id()+"\t\t"+po.getRelate_name());
        }
    }
    static class DataPo{
        //层次
        private String level;
        //名称
        private String name;
        //关联_编号
        private String relate_id;
        //关联_名称
        private String relate_name;

        public String getLevel() {
            return level;
        }

        public void setLevel(String level) {
            this.level = level;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public String getRelate_id() {
            return relate_id;
        }

        public void setRelate_id(String relate_id) {
            this.relate_id = relate_id;
        }

        public String getRelate_name() {
            return relate_name;
        }

        public void setRelate_name(String relate_name) {
            this.relate_name = relate_name;
        }
    }
}
用对象封装下~
iamjsber 2016-09-30
  • 打赏
  • 举报
回复
extjs可以解决

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧