如何获取特定类中的所有字符串?

Fre*_*key 0 java string get class

我正在编写Java程序,并且需要获取指定类中的所有Strings。

实际上,我希望将它们保存在ArrayList中。我已经尝试过了,但是我不知道该怎么做。

例如,如果我的课堂上有以下字符串:public String chicken =“ wing”; public String foo =“ bar”;

然后,我想要一个将找到所有这些字符串的方法,并将它们放在ArrayList中!

谢谢 :)

那就是我尝试过的:

        for(Field f : UUIDd.class.getFields()) {
    System.out.println("trying");
    if(f.getType().isAssignableFrom(String.class)) {
        String s = f.toString();
        System.out.println(s);
    }
}
Run Code Online (Sandbox Code Playgroud)

Ruc*_*era 5

您可以尝试这种方式。

Field[] fields=UUIDd.class.getDeclaredFields(); // get all declared fields 
for(Field field:fields){
   if(field.getType().equals(String.class)){ // if it is a String field
     System.out.println(field.getName());
   }
}
Run Code Online (Sandbox Code Playgroud)

您也可以获得价值Filed

UUIDd uuiDd=new UUIDd();
Field[] fields= uuiDd.getClass().getDeclaredFields(); // get all declared fields
for(Field field:fields){
   if(field.getType().equals(String.class)){ // if it is a String field
      System.out.println("Variable name: "+field.getName());
      field.setAccessible(true);
      System.out.println("Variable value: "+field.get(uuiDd));
    }
}
Run Code Online (Sandbox Code Playgroud)