我正在尝试对 API 进行服务调用,该 API 以分页格式返回结果,并希望为此提供有关迭代器设计模式的建议。
到目前为止我所拥有的是这样的
public class CustomIterator implements Iterator<Type> {
private List<Result> results;
private Service service;
private int index;
private int paginatedResultSize;
private int totalResultsSize;
public CustomIterator(Service service) {
this.service = service;
this.index = 0;
this.results = getResults(index);
this.totalResultsSize = this.results.totalResultsSize();
}
@Override
public boolean hasNext() {
if (index < totalResultsSize)
return true;
return false;
}
@Override
public Type next() {
if(index == paginatedResultSize) {
getResults(index);
}
return results[index++];
}
private List<Result> getResults(index) throws Exception {
this.results = …Run Code Online (Sandbox Code Playgroud) 我试图在多个文件上运行命令“set tabstop=4”,然后“retab”。
我已经到了像这样获取我的 arglist 的地步
args ~/workspace/**/*.java
Run Code Online (Sandbox Code Playgroud)
当我只是使用 args 命令查看文件时,我可以看到这项工作很好。现在,当我尝试对其运行“set tabstop=4”命令时,我只是无法获得正确的组合。我试过了
argdo "set tabstop=4"
Run Code Online (Sandbox Code Playgroud)
进而
argdo "update"
Run Code Online (Sandbox Code Playgroud)
但它似乎从未应用更新,而且我确定有更新,因为我可以单独转到其中一个文件并运行命令并更改文件。我尝试过不同的组合,比如
argdo execute "set tabstop=4"
Run Code Online (Sandbox Code Playgroud)
它似乎永远不会做任何事情。任何帮助,将不胜感激!