从其他代码添加缺少的导入语句

阿纳斯:

我有2个字符串(string1string2),其中包含2个Java类的代码。

string1包含:-

    package com.test.package;

    import com.abc.Test1;
    import com.abc.Test2;
    import com.abc.Test2.Test21;
    import com.abc.Test10;

    public class TestA {
        public void testMethod(){
           //Method body
        }
    }

string2包含:-

    package com.test.package;

    import com.abc.Test1;
    import com.abc.Test2;
    import com.abc.Test3;
    import com.def.ghi.Test4;
    import com.def.ghi.Test5;

    public class TestB {
        public void testMethod(){
           //Method body
        }
    }

现在,我需要string2复制所有不在string1中的import语句

预期:-

    package com.test.package;

    import com.abc.Test1;
    import com.abc.Test2;
    import com.abc.Test2.Test21;
    import com.abc.Test10;
    import com.abc.Test3;
    import com.def.ghi.Test4;
    import com.def.ghi.Test5;

    public class TestA {
        public void testMethod(){
           //Method body
        }
    }

有人可以帮我解决这种情况(至少要获得丢失的导入语句)吗?

Birju B:

请按照以下步骤操作:

1.首先,您需要将字符串拆分为字符串数组,然后将导入作为字符串取出。

String[] string1Array = string1.split("\n\n");
result : string1Array[0]=package com.test.package;
         string1Array[1]=import com.abc.Test1;
                         import com.abc.Test2;
                         import com.abc.Test2.Test21;
                         import com.abc.Test10;
String[] string2Array = string2.split("\n\n");
  1. 现在,您必须拆分导入语句。
String[] importStringArray1 = string1Array[1].split("\n");
String[] importStringArray2 = string2Array[1].split("\n");
output : importStringArray1[0]=import com.abc.Test1;
             importStringArray1[1]=import com.abc.Test2;
             importStringArray1[2]=import com.abc.Test2.Test21;
  1. 现在,您必须检查string2中的导入是否可用,或者在string 1中不可用。如果不存在,则添加到string1中。

    string1 =  string1Array[0].concat("\n\n");
    string1 = string1.concat(string1Array[1]);
    for(String a : importStringArray2) {
          boolean found = false;
          for(String b : importStringArray1){
             if(a.queals(b)) {
                found=true;break;
             }
          }
          if(!found){
             string1=string1.concat("\n").concat(a);
          }
    }
    string1=string1.concat("\n\n").concat(string1Array[2]);
    

希望,这会工作!

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章