gpt4 book ai didi

java - 为什么对象返回空?安卓。改造2

转载 作者:行者123 更新时间:2023-12-01 19:53:23 24 4
gpt4 key购买 nike

为什么对象返回空?安卓。改造2。

我有一个类(class)用户:

public class User{

@SerializedName("LOGIN")
String login;
@SerializedName("PASSWORD")
String password;
@SerializedName("NAME")
String name;
@SerializedName("SURNAME")
String surname;

public String getLogin() {
return login;
}

public void setLogin(String login) {
this.login = login;
}

public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getSurname() {
return surname;
}

public void setSurname(String surname) {
this.surname = surname;
}
}

这是我的 JSON:

[{
"LOGIN":"TEST",
"PASSWORD":"TEST",
"NAME":"TEST",
"SURNAME":"TEST"
}
]

界面:

public interface Link {

@GET("93sZY0Xg")
Call<List<User>> listRepos();

}

以及我使用retrofit2的LoginActivity类:

public class LoginActivity extends AppCompatActivity implements Callback<List<User>>{

private Retrofit retrofit = new Retrofit.Builder()
.addConverterFactory(GsonConverterFactory.create())
.baseUrl("http://pastebin.com/raw/")
.build();
private Link service = retrofit.create(Link.class);

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);

Call<List<User>> us = service.listRepos();
us.enqueue(this);
}

@Override
public void onResponse(Call<List<User>> call, Response<List<User>> response) {

System.out.println(response.body());
System.out.println(response.code());

User us = response.body().get(0);

System.out.println(us.getName());

for(User m: response.body()){

System.out.println( m.getName());

}

}

@Override
public void onFailure(Call<List<User>> call, Throwable t) {

System.out.println(t.getLocalizedMessage());
}
}

我得到这个响应:response.code() is 200;

I/System.out:[com.example.com.dataBase.User@b789a]

我尝试从 User 类中获取名称,但所有变量均为 null。

为什么值是空的?我的错误在哪里?

最佳答案

尝试以下操作,公开注释对于在字段中设置值很重要

@Expose
@SerializedName("movie_id")
private String movieId;

@Expose
@SerializedName("movie_name")
private String movieName;

@Expose
@SerializedName("movie_poster")
private String moviePoster;

@Expose
@SerializedName("movie_dialog_count")
private String movieDialogCount;

关于java - 为什么对象返回空?安卓。改造2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50505533/

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