java - 区分源代码中的文字和变量/符号

标签 java string literals string-literals

通过文字,我的意思是所有常量,例如

这里 10 是整数文字,10.5f 是浮点文字,Hello 是字符串文字 然而,在尝试了一些东西之后,我在代码的某些部分取得了成功。

int a = 10;
float b = 10.5f;
String all = "Hello";

String s = "my source program that i am reading from file";
String lines[] = s.split("\n"); //Break my program into lines
for(int i=0;i<lines.length;i++) {
    if(lines[i].contains("="))
    System.err.println(lines[i].substring(lines[i].indexOf("=")+1),lines[i].indexOf(";"));
}

但它还为我提供了带有如下分配的输出:-

Myapp a=new Myapp();

但是我只需要查找文字

最佳答案

虽然有更好的方法来解决这个问题,但对现有代码的快速修复是进行一些小调整:

    String s = "my source program that i am reading from file";
    String lines[] = s.split("\n"); // Break my program into lines
    for (int i = 0; i < lines.length; i++) {
        if (lines[i].contains("=")) {
            String literal = lines[i].substring((lines[i].indexOf("=") + 1), lines[i].indexOf(";"));
            if (!literal.contains("new"))
                System.err.println(literal);
        }
    }

关于java - 区分源代码中的文字和变量/符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29050112/

相关文章:

c - 字符串赋值的指针。错误: expression is unassignable

arrays - 如何在 VHDL 中初始化长度为 1 的数组

c++ - 为什么字符串文字是左值而所有其他文字都是右值?

string - Ada 中的多行字符串文字

Java MongoDB 对象版本控制

Java:更改对象值而不更改所有引用

java - Spring boot 多数据源配置

Java:用索引处字符串中的子字符串替换特定字符

java - 内容类型 text/xml 错误

c++ - 根据 MSVC++ 中的 unicode 设置自动在 std::string 和 std::wstring 之间切换?