我正在尝试在Eclipse中创建一个简单的Java类,它通过api引入一个JSON数组。我正在尝试添加一个方法来返回一个字符串值,这会产生错误。看来Java并不认为它是一种方法。
import org.springframework.web.client.RestTemplate;
public class GetSurvey {
public static void main(String[] args)
{
int SurveyID = 2107240;
String SurveyDate = "2016-01-07";
String SurveyType;
String apiurl = "https://restapi.surveygizmo.com/v4/survey/" + SurveyID + "...";
String Result(){
return restTemplate.getForObject(apiurl,String.class);
}
}
}
这导致以下错误:
令牌“String”上的语法错误,新的预期
无法将结果解析为类型
语法错误,插入“;”完成声明
Void方法无法返回值
似乎没有将 String Result(){识别为方法。我在没有定义方法的情况下创建了类,并且没有错误。
答案 0 :(得分:2)
解决错误。除了你不能在方法中定义方法。
令牌上的语法错误"字符串",新的预期
Java语法正在寻找像String s = new String()
这样的对象声明。
无法将结果解析为类型
Result()
未定义为方法,因此尝试调用,但无法调用。
语法错误,插入&#34 ;;"完成声明
String Result()
预计以分号结束。
Void方法无法返回值
不言自明,return;
方法不能void
main
。
看起来你打算这样做
import org.springframework.web.client.RestTemplate;
public class GetSurvey {
@Autowired
private RestTemplate restTemplate;
private static String getTemplate(String apiUrl) {
return restTemplate.getForObject(apiUrl,String.class);
}
public static void main(String[] args)
{
int SurveyID = 2107240;
String SurveyDate = "2016-01-07";
String SurveyType;
String apiurl = "https://restapi.surveygizmo.com/v4/survey/" + SurveyID + "...";
String result = getTemplate(apiurl);
}
}
答案 1 :(得分:1)
您无法在main方法中定义方法。
答案 2 :(得分:1)
您通过在其他人中定义方法来嵌套方法,这不是java的工作原理..
移动方法
String Result(){
return restTemplate.getForObject(apiurl,String.class);
}
超出main
方法。
并且要小心返回的val的范围。