Java 是否按名称设置方法参数?
是否可以像在JavaScript中那样,通过名称设置方法参数: 比如:Java 是否按名称设置方法参数?,java,json,Java,Json,是否可以像在JavaScript中那样,通过名称设置方法参数: 比如: void function(? jsonObject){ // ... } 及 或 不,你不能。但是,还有其他选择: 您可以使用JSON到Java对象库(例如Jackson)。通过这种方法,您可以将JSON强制转换为对象 如果需要Javascript支持,可以使用本机Javascript引擎Nashorn 您可以使用任何序列化/反序列化库(如GSON-to-for-Object-to-JSON-viceversa)
void function(? jsonObject){
// ...
}
及
或
不,你不能。但是,还有其他选择:
您可以使用任何序列化/反序列化库(如GSON-to-for-Object-to-JSON-viceversa)。下面是一个Pojo示例
public class Plant{
private String color;
private int age;
//Getter and Setter
//toString() implement as you want
}
private void displayPlant(Plant plant){
System.out.println(plant)
}
如果您需要有关GSON的更多详细信息,请告诉我。在Java中,您可以将JSON作为字符串对象读取,然后解析为有效对象或映射,如:
import com.fasterxml.jackson.core.JsonGenerationException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
void function(String jsonObject){
YourClass obj = mapper.readValue(jsonObject, YourClass.class);
System.out.println(obj);
}
public class Plant{
private String color;
private int age;
//Getter and Setter
//toString() implement as you want
}
private void displayPlant(Plant plant){
System.out.println(plant)
}
import com.fasterxml.jackson.core.JsonGenerationException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
void function(String jsonObject){
YourClass obj = mapper.readValue(jsonObject, YourClass.class);
System.out.println(obj);
}