如何用RxJava2.0.7和Retrofit2.2.0优雅的实现网络请求
2个回答
展开全部
RxJava要比EventBus的应用更广泛,EventBus仅仅是作为一种消息的传递工具,但虚缓是RxJava里面几乎可以做任何事情。
如果是Android开发的话,可以使用RxAndroid,这是对RxJava的一个扩展,结合sqare公司的retrofit可掘肢以很轻松的完成网络的访问。
我们知道,在Android中异步操作一般使用AsycTask来完成,但是AsycTask有很多缺点,如不能方便的终止任务的执行等。
RxAndroid完全可以替代AsycTask来完成各种异步操作,而且还有BindActivity和BindFragment方法,你根本不需要考虑异步操作时的Activity和Fragment的生命周期问题,还有更加强大的的链式调用,可以使程序很简洁。
EventBus有个缺点就是凡是使用差散模了EventBus的类都不能进行混淆了,否则Evnetbus就找不到OnEvent方法了。
以上,推荐使用RxAndroid。
如果是Android开发的话,可以使用RxAndroid,这是对RxJava的一个扩展,结合sqare公司的retrofit可掘肢以很轻松的完成网络的访问。
我们知道,在Android中异步操作一般使用AsycTask来完成,但是AsycTask有很多缺点,如不能方便的终止任务的执行等。
RxAndroid完全可以替代AsycTask来完成各种异步操作,而且还有BindActivity和BindFragment方法,你根本不需要考虑异步操作时的Activity和Fragment的生命周期问题,还有更加强大的的链式调用,可以使程序很简洁。
EventBus有个缺点就是凡是使用差散模了EventBus的类都不能进行混淆了,否则Evnetbus就找不到OnEvent方法了。
以上,推荐使用RxAndroid。
展开全部
代码如下…I hope you meet the requirements of
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public class Test
{
public static void main (String[] args) {
String S1 = \\\"AABBC\\\"; \\\"BR>String S2 =\\\" ABBCC \隐肆旁\\";
List sub1 = new (ArrayList); \\\/ \\\/ save S1 string
List, sub2 = new (ArrayList); save the S2 \\\/ \\\/ string
Set = result new (HashSet); \\\/ \\\/ save the same string for a substring of S1
for
\\\/\\\/ (int i i for (int = 1; J = 0; j<=s1.length (-i); j++ ({
sub1.add) s1.substring (J, j+i));
}
}
\\\/\\\/ S2 string
for (int i i for (int = 1; J = 0; j<=s2.length (-i); j++ ({
sub2.add) s2.substring (J, j+i));
}
} BR>
System.out.println(\\“\\”aabbc \\\\\\“字符串”(
System.out.println + SUB1)\\”\\“\\”abbcc字符串:“+ SUB2);
为(String s:SUB1)
如果(sub2.contains(S))
> result.add(S);
为(String s:SUB2)
如果(sub1.contains(S))
result.add(S)灶橡;
System.out.println(“相同的字符串雹晌:“
} }
+结果);希望可以帮助你…还有问题可以嗨我…
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public class Test
{
public static void main (String[] args) {
String S1 = \\\"AABBC\\\"; \\\"BR>String S2 =\\\" ABBCC \隐肆旁\\";
List sub1 = new (ArrayList); \\\/ \\\/ save S1 string
List, sub2 = new (ArrayList); save the S2 \\\/ \\\/ string
Set = result new (HashSet); \\\/ \\\/ save the same string for a substring of S1
for
\\\/\\\/ (int i i for (int = 1; J = 0; j<=s1.length (-i); j++ ({
sub1.add) s1.substring (J, j+i));
}
}
\\\/\\\/ S2 string
for (int i i for (int = 1; J = 0; j<=s2.length (-i); j++ ({
sub2.add) s2.substring (J, j+i));
}
} BR>
System.out.println(\\“\\”aabbc \\\\\\“字符串”(
System.out.println + SUB1)\\”\\“\\”abbcc字符串:“+ SUB2);
为(String s:SUB1)
如果(sub2.contains(S))
> result.add(S);
为(String s:SUB2)
如果(sub1.contains(S))
result.add(S)灶橡;
System.out.println(“相同的字符串雹晌:“
} }
+结果);希望可以帮助你…还有问题可以嗨我…
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询