从类到主解析java中的JSON
我有一个主类和一个普通的java类。一个将解析URL中的所有内容,另一个将全部打印出来。 我举的一个例子是它都在main和一个私有的静态void类中,但是当我想把它放到一个单独的类中时,我会在main或parse类中得到一个错误,这取决于我对构造函数的定义 这是主课从类到主解析java中的JSON,java,json,Java,Json,我有一个主类和一个普通的java类。一个将解析URL中的所有内容,另一个将全部打印出来。 我举的一个例子是它都在main和一个私有的静态void类中,但是当我想把它放到一个单独的类中时,我会在main或parse类中得到一个错误,这取决于我对构造函数的定义 这是主课 URL url = new URL("https://euw.api.pvp.net/api/lol/euw/v2.5/league/master?type=RANKED_FLEX_SR&api_key=RGAPI-fdf9
URL url = new URL("https://euw.api.pvp.net/api/lol/euw/v2.5/league/master?type=RANKED_FLEX_SR&api_key=RGAPI-fdf965a6-41b8-4fac-831a-f4aaeb133659");
InputStream in = url.openStream();
JsonReader reader = Json.createReader(in);
myJsonParser json = new myJsonParser(reader.readObject());
这是另一节课。如果我把public void改为private void,我就不能在课外得到它
public void myJsonParser(JsonObject object)
{
Set<String> fields = object.keySet();
for( String st : fields){
//Array
JsonArray ja = null;
//Object
JsonObject jo = null;
//String
JsonValue jv = null;
try{
ja = object.getJsonArray(st);
}catch( ClassCastException ex1){
try{
jo = object.getJsonObject(st);
`` }catch( ClassCastException ex2){
try{
jv = object.get(st);
}catch( ClassCastException ex3){
System.out.println("EXCEPTION");
}
}
}
if(ja != null){
//System.out.println(st + " is a Array " + ja.toString());
for (int i = 0; i < ja.size(); i++) {
//Returns JSON objects
JsonObject object2 = ja.getJsonObject(i);
myJsonParser(object2);
}
}else if(jo != null){
System.out.println(st + " is a Object " + jo.toString());
}else if( jv != null){
System.out.println(st + " is a String " + jv.toString());
}
}
}
public void myJsonParser(JsonObject对象)
{
Set fields=object.keySet();
for(字符串st:字段){
//排列
JsonArray ja=null;
//反对
JsonObject jo=null;
//串
JsonValue jv=null;
试一试{
ja=object.getJsonArray(st);
}捕获(ClassCastException ex1){
试一试{
jo=object.getJsonObject(st);
``}catch(ClassCastException ex2){
试一试{
jv=object.get(st);
}捕获(ClassCastException ex3){
System.out.println(“例外”);
}
}
}
如果(ja!=null){
//println(st+“是一个数组”+ja.toString());
对于(int i=0;i
有什么方法可以让我进入课堂内外?我正在尝试让它工作,然后将它传输到JSP,或者甚至是一种方式,这样我就不必使用主类,因为我无论如何都要将它传输到JSP
编辑:我还需要使用返回类型,但当我尝试执行返回时,我也会得到一个错误您应该使该方法返回一些内容,如果您想在类外使用它,则需要将其公开。打印与返回不同,但您的问题并不清楚您想要什么。您还需要了解类、方法和构造函数之间的区别。myJsonParser json=new myJsonParser(reader.readObject());主类中的这个错误告诉我构造函数中没有参数@你是对的是的