Я хочу использовать JavaParser, чтобы изменить все значения переменных String в исходном коде Java с любого значения на ""
.
Я могу изменить значение глобальных переменных, но не могуизмените значение переменных уровня метода.
Оглядываясь вокруг, я получил помощь от this и this ответов, и теперь я могу получить значение для каждой строки кодав каждом методе, например, так:
static void removeStrings(CompilationUnit cu) {
for (TypeDeclaration typeDec : cu.getTypes()) {
List<BodyDeclaration> members = typeDec.getMembers();
if (members != null) {
for (BodyDeclaration member : members) {
if (member.isMethodDeclaration()) { // If it is a method variable
MethodDeclaration method = (MethodDeclaration) member;
Optional<BlockStmt> block = method.getBody();
NodeList<Statement> statements = block.get().getStatements();
for (Statement tmp : statements) {
// How do I change the values here?
}
}
}
}
}
}
Теперь, как мне изменить значения tmp
, если это объявление String?