gpt4 book ai didi

java - JSONArray 类型未定义方法 length()

转载 作者:塔克拉玛干 更新时间:2023-11-02 18:59:51 25 4
gpt4 key购买 nike

当我尝试获取 JSONArray 的长度时,Eclipse 总是给我这个编译错误:

the method length() is undefined for the type JSONArray

代码如下:

import org.springframework.context.annotation.Scope;
import java.net.*;
import java.io.*;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JSONSerializer;
import javax.inject.Named;

@Named("search")
@Scope("request")

public class Search {

private String query;
private String result;
private int num;


public String getQuery() {
return query;
}
public void setQuery(String query) {
this.query = query;
}
public String getResult() {
return this.result;
}
public void setResult(String result) {
this.result = result;
}
public int getNum() {
return this.num;
}
public void setNum(int num) {
this.num = num;
}


public String send() {
try
{
//SEND REQUEST TO SOLR SERVER

URL url = new URL("http://localhost:8983/solr/select/?q="+this.query +"&version=2.2&start=0&rows=100&indent=on&wt=json");

BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
String str;

while ((str = in.readLine()) != null)
{
this.result = this.result+str;
}

in.close();

//CONVERT RESULT TO OBJECT


this.result=this.result.substring(4);
JSONObject json = (JSONObject) JSONSerializer.toJSON(this.result);
JSONArray results = new JSONArray();
json = json.getJSONObject("response");
this.num = json.getInt("numFound");

results = json.getJSONArray("docs");
int num = results.length();

我不知道为什么会弹出这个错误。这是怎么引起的,我该如何解决?

最佳答案

javadoc here不显示 JSONArray 的 length() 方法。因此错误。不过它确实有 size(),这是您想要的吗?

关于java - JSONArray 类型未定义方法 length(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8400985/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com