无法修复反编译的java文件中的错误,可能的修复?

时间:2016-12-13 17:08:27

标签: java

.jar库中提取类,并将类反编译为.java个文件。现在当我尝试重新编译一个java文件时,我收到一个错误,我无法解决,这是代码:

    private void d(int paramInt)
{
    int i1 = paramInt;
    if (this.v)
    {
        i1 = paramInt;paramInt = this;
        if (this.r == 4) {
            paramInt.r = 0;
        }
        paramInt.q[paramInt.r] = i1;paramInt.r += 1;paramInt.s.clear();i1 = 0;
        break label78;
        paramInt.s.add(Integer.valueOf(paramInt.q[i1]));i1++;
        label78:
        for (i1 < paramInt.q.length; paramInt.s.size() > 2; paramInt.s.addAll(paramInt.t))
        //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ where the error occurs
        {
            paramInt.t.clear();
            for (i1 = 0; i1 + 2 < paramInt.s.size(); i1++)
            {
                int i5 = ((Integer)paramInt.s.get(i1 + 2)).intValue();int i4 = ((Integer)paramInt.s.get(i1 + 1)).intValue();int i3 = ((Integer)paramInt.s.get(i1)).intValue();int i2 = paramInt;int i6 = a(i3, i4);paramInt.t.add(Integer.valueOf(i2 = a(i2 = b(i2 = b(i3, i4), i5), i6)));
            }
            paramInt.s.clear();
        }
        i1 = ((Integer)paramInt.s.get(0)).intValue();
    }
    if (this.u != i1)
    {
        if (this.o != null)
        {
            this.o.onImageRecognitionResult(i1);
        }
        this.u = i1;
    }
}

这是我通过命令行编译文件时获得的:

    C:\Users\oblivion\Desktop\EADMatching.jar.src\com\arlab\imagerecognition>javac A
Rmatcher.java
ARmatcher.java:385: error: > expected
      for (i1 < paramInt.q.length; paramInt.s.size() > 2; paramInt.s.addAll(para
mInt.t))
                                 ^
ARmatcher.java:385: error: not a statement
      for (i1 < paramInt.q.length; paramInt.s.size() > 2; paramInt.s.addAll(para
mInt.t))
              ^
2 errors

如何解决?

1 个答案:

答案 0 :(得分:1)

for (i1 < paramInt.q.length; paramInt.s.size() > 2; paramInt.s.addAll(paramInt.t))

这是导致问题的for循环,将它与for循环比较如下:

for (i1 = 0; i1 + 2 < paramInt.s.size(); i1++)

您可以看到第一个循环的语法完全不正确。 java文档解释了正确的for循环语法:

Java Documentation