Java fromjson()导致NullPointerException
试图通过将项目加载为JSON来填充Java fromjson()导致NullPointerException,java,android,json,Java,Android,Json,试图通过将项目加载为JSON来填充ListView,因此我使用gson来简化事情。这是导致错误的代码: private void showData(String jsonString) { Gson gson = new Gson(); Movie_Skeleton movie = gson.fromJson(jsonString, Movie_Skeleton.class); List<Post> posts = movie.getPosts();
ListView
,因此我使用gson
来简化事情。这是导致错误的代码:
private void showData(String jsonString) {
Gson gson = new Gson();
Movie_Skeleton movie = gson.fromJson(jsonString, Movie_Skeleton.class);
List<Post> posts = movie.getPosts();
for(Post p1:posts)
{
Log.w("PREMIERE:::",""+p1.getTitle());
}
mAdapter = new CustomAdapter(this, posts);
mListView.setAdapter(mAdapter);
}
后课堂
public class Movie_Skeleton
{
int page;
List<Post> result;
public int getPage() {
return page;
}
public void setPage(int page) {
this.page = page;
}
public List<Post> getPosts() {
return result;
}
public void setPosts(List<Post> result) {
this.result = result;
}
}
public class Post
{
String poster_path;
Boolean adult;
String overview;
String release_date;
int[] genre_ids = new int[3];
int id;
String original_title;
String original_language;
String title;
String backdrop_path;
double popularity;
int vote_count;
Boolean video;
double vote_average;
public String getPoster_path()
{
return poster_path;
}
public void setPoster_path(String poster_path)
{
this.poster_path=poster_path;
}
public Boolean getAdult()
{
return adult;
}
public void setAdult(Boolean adult)
{
this.adult = adult;
}
public String getOverview()
{
return overview;
}
public void setOverview(String overview)
{
this.overview = overview;
}
public String getRelease_date()
{
return release_date;
}
public void setRelease_date(String release_date)
{
this.release_date = release_date;
}
public int[] getGenre_ids()
{
return genre_ids;
}
public void setGenre_ids(int[] genre_ids)
{
this.genre_ids[0] = genre_ids[0];
this.genre_ids[1] = genre_ids[1];
this.genre_ids[2] = genre_ids[2];
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getOriginal_title()
{
return original_title;
}
public void setOriginal_title(String original_title)
{
this.original_title = original_title;
}
public String getOriginal_language()
{
return original_language;
}
public void setOriginal_language(String original_language)
{
this.original_language = original_language;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getBackdrop_path() {
return backdrop_path;
}
public void setBackdrop_path(String backdrop_path) {
this.backdrop_path = backdrop_path;
}
public Double getPopularity() {
return popularity;
}
public void setTitle(Double popularity) {
this.popularity = popularity;
}
public int getVote_count() {
return vote_count;
}
public void setVote_count(int vote_count) {
this.vote_count = vote_count;
}
public Boolean getVideo()
{
return video;
}
public void setVideo(Boolean video)
{
this.video = video;
}
public Double getVote_average() {
return vote_average;
}
public void setVote_average(Double vote_average) {
this.vote_average = vote_average;
}
}
编辑1
这是json文件:
for(Post p1:posts)
此行:java.lang.NullPointerException:尝试在空对象引用上调用接口方法“java.util.Iterator java.util.List.Iterator(),这就是错误!jsonString是有效的JSON吗?你能验证一下吗?是的,我已经验证过两次了,作为一个完整的完美字符串,你的博士后课程可能有问题,你能从你的电影骨架中注释掉“List result;”并试着看看你是否得到了“page”变量吗?你能试着制作List Tyre_ID而不是int[]Tyre_ID吗?