java - 从另一个代码添加缺少的导入语句
问题描述
我有 2 个字符串(string1和string2),其中包含 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中的导入语句。
预期的 :-
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
}
}
任何人都可以帮我解决这种情况(至少得到缺少的导入语句)吗?
解决方案
请按照以下步骤操作:
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");
- 现在您必须拆分导入语句。
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 中的导入是否可用。如果它不存在,则添加到字符串 1 中。
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]);
希望,这会奏效!
推荐阅读
- amazon-web-services - 使用 Amazon EventBridge 在组织内发布和接收跨账户事件
- hibernate - JPA 正确定位和打包元模型
- jquery - node.js + mysql + ejs 数据插入后无需重新加载页面即可更新屏幕信息
- keras - TypeError: `Conv2D` 只能接受 2 个位置参数('filters'、'kernel_size'),但您传递了以下位置参数:
- google-apps-script - 通过公式中的索引引用另一个 Google 工作表
- google-sheets - 如果单元格包含“下一小时”(当前小时+ 1)的值,如何有条件地将单元格格式化为某种颜色?
- python-3.x - 在 DIV 中寻找 DIV - BeautifulSoup
- java - 如何从远程客户端访问 EJB?
- python - 编写级联循环和 if 语句的 Pythonic 方式?
- javascript - 尝试在 JS 中使用类