微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

RxJava 将 Single<String> 对象转换为 String 类

如何解决RxJava 将 Single<String> 对象转换为 String 类

是否可以将 Single 对象转换为 String 类?

Single stringSingle = Single.just(User.getName());

字符串 s = "";

s=stringSingle;

如何将 stringSingle 分配给 s 变量?

解决方法

你可以拥有这样的东西。

import rx.Single;
import lombok.Getter;

public class TestClass {

  public static void main(String[] args) {
     Single<User> stringSingle = Single.just(new User("Peter",9));
   final String[] s = new String[1];

   //Asynchronous and advisable 
   stringSingle.subscribe( result -> {
      s[0] = result.toString();
    });
    System.out.println(s[0]);
     
     //Blocking and not very advisible way of getting the value
    String s2 =   stringSingle.toBlocking().value().toString();
    System.out.println(s2);
  }
}

//Example of a possible User class to use.
class User{
  @Getter
  private String name;
  @Getter
  private int age ;

  public User( String nm,int ag){
    name = nm;
    age = ag;
  }

  @Override
  public String toString(){
    return "name " + getName() + " and age " + getAge();
  }
}

结果是

name Peter and age 9
name Peter and age 9

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。