一个csv文件或者Stringbuffer是如此的内容A, [email protected], , , 8877
B, [email protected], , , 333
C, [email protected], , ,
D, , , , 3333如何以最快速度把那些空列删除,最终应该是以下格式A, [email protected], 8877
B, [email protected],333
C, [email protected],
D, ,3333我试过以下方法:先在第一次循环里,用一个HashMap记录每个列的总和,然后遍历整个HashMap,找出那些空列的索引号,最后一次循环里遇到空列的索引就跳过但这样子速度很慢,5万行的记录要2分钟才能最终完成,因为在每一行的遍历过程中都要对Hashmap进行操作,增加了时间复杂度, 有没其他好的办法?
B, [email protected], , , 333
C, [email protected], , ,
D, , , , 3333如何以最快速度把那些空列删除,最终应该是以下格式A, [email protected], 8877
B, [email protected],333
C, [email protected],
D, ,3333我试过以下方法:先在第一次循环里,用一个HashMap记录每个列的总和,然后遍历整个HashMap,找出那些空列的索引号,最后一次循环里遇到空列的索引就跳过但这样子速度很慢,5万行的记录要2分钟才能最终完成,因为在每一行的遍历过程中都要对Hashmap进行操作,增加了时间复杂度, 有没其他好的办法?
解决方案 »
- JTable表格事件求解
- 贪吃蛇this.setFocusable(true);不起作用
- java虚拟机崩溃,请高手指点一二
- java的socket线程之间怎么通信?
- Think in Java 中的源码怎么布置?
- 编译出错!Note: E:\design--houq\TongJi.java uses unchecked or unsafe operations
- 关于发展方向~
- java的爱好者都进来-Look 一 Look啊!!
- 谁有针对算术表达式分析的java程序呀?
- 【公告】JAVA程序员请登记基本信息,一星期后给每人发一份名单数据库。
- 如何将TXT中的内容存入LIST里
- jtable 有什么方法自动设置高度长度?
String[][] data ={二维数组信息};
boolean[] colEmpty = new int[colCnt];
Arrays.fill(colEmpty, true);
for (int i=0; i<data.length; i++) {
for (int j=0; j<data[i].length; j++) {
colEmpty[i] &= data[i][j].isEmpty();
}
}
colEmpty[i] = (colEmpty[i] && data[i][j].isEmpty());