小编mrm*_*sra的帖子

Mockito:使用有界通配符返回类型的存根方法

考虑以下代码:

public class DummyClass {
    public List<? extends Number> dummyMethod() {
        return new ArrayList<Integer>();
    }
}
Run Code Online (Sandbox Code Playgroud)
public class DummyClassTest {
    public void testMockitoWithGenerics() {
        DummyClass dummyClass = Mockito.mock(DummyClass.class);
        List<? extends Number> someList = new ArrayList<Integer>();
        Mockito.when(dummyClass.dummyMethod()).thenReturn(someList); //Compiler complains about this
    }
}
Run Code Online (Sandbox Code Playgroud)

编译器抱怨正在尝试存根行为的行dummyMethod().关于如何使用有界通配符返回类型的存根方法的任何指针?

java generics unit-testing mockito bounded-wildcard

117
推荐指数
4
解决办法
8万
查看次数

ANTLR:Unicode字符扫描

问题:无法正确打印Unicode字符.

这是我的语法:

options { k=1; filter=true;
 // Allow any char but \uFFFF (16 bit -1)
charVocabulary='\u0000'..'\uFFFE'; 
}

ANYCHAR :'$'
|    '_' { System.out.println("Found underscore: "+getText()); }
|    'a'..'z' { System.out.println("Found alpha: "+getText()); }
|    '\u0080'..'\ufffe' { System.out.println("Found unicode: "+getText()); }
; 
Run Code Online (Sandbox Code Playgroud)

调用词法分析器的main方法的代码片段:

public static void main(String[] args) {
SimpleLexer simpleLexer = new SimpleLexer(System.in);
while(true) {
try {
Token t = simpleLexer.nextToken();
System.out.println("Token : "+t);

} catch(Exception e) {}

}
}
Run Code Online (Sandbox Code Playgroud)

对于输入"ठ",我得到以下输出:

Found unicode: 
Token : ["à",<5>,line=1,col=7]
Found unicode: …
Run Code Online (Sandbox Code Playgroud)

java antlr lexer

5
推荐指数
1
解决办法
3798
查看次数

标签 统计

java ×2

antlr ×1

bounded-wildcard ×1

generics ×1

lexer ×1

mockito ×1

unit-testing ×1