java - Android - 获取值

标签 java android

test=0;
Phone phone=new Phone();
phone.phone="01093575777";
WebService.getInstance().getApi().checkNumber(phone).enqueue(new Callback<MainResponse>() {
    @Override
    public void onResponse(Call<MainResponse> call, Response<MainResponse> response) {
        if (response.body().status==1){
            test++;
            //----------------->first place
        }
    }

    @Override
    public void onFailure(Call<MainResponse> call, Throwable t) {
    }
});

//----------------->second place

当我从第一个位置打印值时,它等于 1,这就是我想要的

但是当从第二位打印它时,它等于 0

为什么?以及如何解决这个问题

最佳答案

我假设您指的是test的值。您安排一个调用来异步检查号码。将来的某个时间,结果将会返回,onResponse 将被执行。这种情况发生在你达到“第二名”之后。因此,当您在那里打印时 test 仍然是 0。

关于java - Android - 获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44558973/

相关文章:

java - pretty-print Java 方法签名并解析回来

java - CheckStyle 对我不起作用

java - 当我覆盖 equals() 方法时,为什么要覆盖 hashCode()?

java - 我有 JAXB 类加载器泄漏吗

JavaScript doOnOrientationChange :can't fix a bug loading the page

java - 字符串比较应该相等时却不相等

java - 使用 Spring Boot JPA 高效合并两个表

java - Android 对话框和 edittext 值?

javascript - 从 webview 获取用户触摸的元素

android - 无法在 Android Studio 中使用 jsoup