本文整理汇总了Java中jline.console.ConsoleReader.readCharacter方法的典型用法代码示例。如果您正苦于以下问题:Java ConsoleReader.readCharacter方法的具体用法?Java ConsoleReader.readCharacter怎么用?Java ConsoleReader.readCharacter使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类jline.console.ConsoleReader
的用法示例。
在下文中一共展示了ConsoleReader.readCharacter方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: printCandidates
import jline.console.ConsoleReader; //导入方法依赖的package包/类
public static void printCandidates(ConsoleReader reader, Collection<CharSequence> candidates) throws IOException {
HashSet distinct = new HashSet(candidates);
if(distinct.size() > reader.getAutoprintThreshold()) {
reader.print(Messages.DISPLAY_CANDIDATES.format(candidates.size()));
reader.flush();
String i$ = Messages.DISPLAY_CANDIDATES_NO.format();
String next = Messages.DISPLAY_CANDIDATES_YES.format();
char[] allowed = new char[]{next.charAt(0), i$.charAt(0)};
int copy;
while((copy = reader.readCharacter(allowed)) != -1){
String tmp = new String(new char[]{(char) copy});
if(i$.startsWith(tmp)) {
reader.println();
return;
}
if(next.startsWith(tmp)) {
break;
}
reader.beep();
}
}
if(distinct.size() != candidates.size()) {
ArrayList copy1 = new ArrayList();
Iterator i$1 = ((Collection) candidates).iterator();
while(i$1.hasNext()){
CharSequence next1 = (CharSequence) i$1.next();
if(!copy1.contains(next1)) {
copy1.add(next1);
}
}
candidates = copy1;
}
reader.println();
// clear candidates
Collection<CharSequence> clearedCandidates = new ArrayList<>();
for(CharSequence candidate : candidates) {
String str = candidate + "";
String[] spl = str.split(" ");
if(spl.length != 1) {
str = spl[spl.length - 1];
}
clearedCandidates.add(str);
}
reader.printColumns(clearedCandidates);
}