• 技术文章 >Java >Java入门

    java如何实现多数组合并

    VV2020-08-01 16:38:52转载250

    需求:

    现在有多组整数数组,需要将他们合并成一个新的数组。

    (推荐教程:java入门教程

    合并规则:

    从每个数组里按顺序取出固定长度的内容合并到新的数组中,取完的内容会删除掉,如果该行不足固定长度或者已经为空,则直接取出剩余部分的内容放到新的数组中,继续下一行。

    (视频教程推荐:java视频教程

    代码实现:

    package Shuru_lianxi;
     
    import java.util.ArrayList;
    import java.util.Scanner;
     
    public class biShi {
     
    	public static boolean isNull(ArrayList<String> gh) {
    		int i = 0;
    		for (i = 0; i < gh.size(); i++) {
    			if (gh.get(i) != null)
    				break;
    		}
    		if (i < gh.size()) {
    			return false;
    		} else {
    			return true;
    		}
    	}
     
    	public static void Alg(ArrayList<String> ma, int num) {
    		String tem = "";// 作为最后的返回结果
    		while (!isNull(ma)) {
    			for (int i = 0; i < ma.size(); i++) {
    				String sk = ma.get(i);
    				if (sk == null) {
    					continue;
    				}
    				String[] gg = sk.split(",");
    				if (sk.length() == 0) {
    					ma.set(i, null);// 删掉取完的内容
    				} else {
    					if (gg.length <= num) {
    						tem = tem + sk + ",";
    						ma.set(i, null);
    					} else {
    						for (int k = 0; k < num; k++) {
    							tem = tem + gg[k] + ",";
    						}
    						String hh = "";
    						for (int l = num; l < gg.length; l++) {
    							if (l == gg.length - 1) {
    								hh = hh + gg[l];
    							} else {
    								hh = hh + gg[l] + ",";
    							}
    						}
    						// 将没取完的数组重新覆盖
    						ma.set(i, hh);
    					}
    				}
    			}
    		}
    		System.out.println(tem.substring(0, tem.length() - 1));
    	}
     
    	public static void main(String[] args) {
    		Scanner sc = new Scanner(System.in);
    		int num = sc.nextInt();
    		ArrayList<String> ma = new ArrayList<String>();
    		sc.nextLine();// nextInt()会留下一个回车,需要消除,否则后边会出错
    		while (!sc.hasNext("#")) {// 以#结束,这里你可以修改成其他的
    			ma.add(sc.nextLine());
    		}
    		Alg(ma, num);
    	}
    }

    以上就是java如何实现多数组合并的详细内容,更多请关注php中文网其它相关文章!

    本文转载于:csdn,如有侵犯,请联系a@php.cn删除
    专题推荐:java 多数组
    上一篇:java中的异常如何处理 下一篇:java中String类有什么特点
    第12期线上周末培训班

    相关文章推荐

    • php多数组排列组合实例• 求php多数组组合排列算法• 求php多数组组合写入数据库方法• java中的异常如何处理

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网