我有这样的java代码
mDataManager.getObservable("hello").subscribe( subscriber );
Run Code Online (Sandbox Code Playgroud)
我想要verify以下Observable.subscribe()
我试图模仿getObservable()和verify
Observable<Response> res = mock(Observable.class);
when(mDataManager.getObservable("hello")).thenReturn(res);
verify(res).subscribe();
Run Code Online (Sandbox Code Playgroud)
但是有一个错误
Caused by: java.lang.IllegalStateException: onSubscribe function can not be null.
at rx.Observable.subscribe(Observable.java:8167)
at rx.Observable.subscribe(Observable.java:8158)
at rx.Observable.subscribe(Observable.java:7962)
....
Caused by: rx.exceptions.OnErrorThrowable$OnNextValue: OnError while emitting onNext value: omni.neo.hk.omniapiservice.v4.model.external.UserLoginBean.class
at rx.exceptions.OnErrorThrowable.addValueAsLastCause(OnErrorThrowable.java:109)
at rx.exceptions.Exceptions.throwOrReport(Exceptions.java:187)
at rx.internal.operators.OperatorDoOnEach$1.onNext(OperatorDoOnEach.java:82)
... 48 more
Run Code Online (Sandbox Code Playgroud)
我认为mock这里不可能是一个Observable,但是如果没有一个模拟的Observable我就做不到verify(res).subscribe()
在这种情况下的任何建议?
给出2个字符串:
String stringA = "WHATSUP";
String stringB = "HATS";
Run Code Online (Sandbox Code Playgroud)
我想知道stringB H A T S中的每个字符是否都存在stringA
在初级方法中,该过程可以在嵌套的for循环内完成,其计算复杂度为O(n ^ 2).
for(int i = 0; i < stringA.length(); i++){
for(int j = 0; j < stringB.length(); j++){
if(stringA.charAt(i) == stringB.charAt(j))
//do something
}
}
Run Code Online (Sandbox Code Playgroud)
我正在寻找一个更快的解决方案来解决这个问题.
我有一些代码如下:
public class java_generic {
public static void main(String[] args) {
T t = new X();
t.<Object>m(new Object());
t.<String>m(new String());
}
static class T {
<E> void m (E e){
System.out.println("here is T");
}
}
static class X extends T {
void m (String o){
System.out.println("here is X");
}
}
}
Run Code Online (Sandbox Code Playgroud)
从我的理解,在类型擦除后,课程T将成为这样:
static class T {
void m (Object e){
System.out.println("here is T");
}
}
Run Code Online (Sandbox Code Playgroud)
并且m超载.
有m(Object)和m(String),我希望结果会是
here is T
here is X
Run Code Online (Sandbox Code Playgroud)
但结果是 …
filter我这里有一个函数
fun filter(category: String) {
...
}
Run Code Online (Sandbox Code Playgroud)
和一个具有许多常量字符串的类
object Constants {
val CAT_SPORT = "CAT_SPORT"
val CAT_CAR = "CAT_CAR"
...
}
Run Code Online (Sandbox Code Playgroud)
如何确保参数category是常量字符串Constants(或抛出警告)?
我正在寻找类似的东西@StringRes。
我知道Enum可能会成功,但此时不喜欢进行代码重构。
java ×3
android ×1
annotations ×1
compare ×1
computation ×1
erasure ×1
generics ×1
kotlin ×1
mockito ×1
observable ×1
rx-java ×1
subset ×1
types ×1
unit-testing ×1