如何过滤具有空格的空数组?

时间:2016-04-01 14:12:57

标签: java arrays hash

        String[][][] a=new String[5][5][5];
        HttpSession session = request.getSession();
        char[][] split = null;


        split=(char[][]) session.getAttribute("chardata");
        int[][][] plaint = (int[][][]) session.getAttribute("root");
        int r1=plaint.length;
        for (int i = 0; i < r1; i++) {
            int r2=plaint[i].length;
            for (int j = 0; j < r2; j++) {
                int r3=plaint[i][j].length;
                for (int k = 0; k < r3; k++) {
                    if(plaint[i][j][k]!=0){
                        a[i][j][k]= sha256(Integer.toString(plaint[i][j][k]));
                        out.println("data:"+split[i][j]+" <br> hash:" + a[i][j][k]+"<br>");

                    }
                }
                session.setAttribute("hashed",a);
                out.println(" <br><br>");
            }out.println(" <br>");
        }
        out.println("</body>");
        out.println("</html>");
        RequestDispatcher rd = request.getRequestDispatcher("redirection");
        rd.forward(request,response);

这是我的servlet。

Sha256对值​​进行散列并将十六进制字符串返回到[] [] []。

输出的一部分是:

  

数据:■
  散列:d6d824abba4afde81129c71dea75b8100e96338da5f416d2f69088f1960cb091

     

数据:H
  散列:ad48ff99415b2f007dc35b7eb553fd1eb35ebfa2f2f308acd9488eeb86f71fa8

     

数据:
  散列:ad48ff99415b2f007dc35b7eb553fd1eb35ebfa2f2f308acd9488eeb86f71fa8

变量plaint [] [] []具有空值,也会被发送以进行哈希处理。我无法过滤掉这些空值。它似乎有一个白色空间,但系统不认为这是白色空间。它也不认为该值为空。

Split [] []也有同样的问题,因为它来自plaint [] [] []。它具有用户输入的值和一个字符&#39; &#39;作为剩余索引值

如何过滤掉它?

1 个答案:

答案 0 :(得分:0)

具有&#39;的角色。 &#39;表示它为null(/ u0000)。所以使用:

if(split[i][j]!=0)

检查它是否为NULL可以解决问题。