Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何返回for循环中的所有值?_Java_Groovy - Fatal编程技术网

Java 如何返回for循环中的所有值?

Java 如何返回for循环中的所有值?,java,groovy,Java,Groovy,我在FileMaker中运行了这段groovy代码,但是循环只返回一个值,我如何返回所有FileList。 在FileMaker中,println语句不起作用,只有return语句起作用,那么如何返回所有值呢 如下循环显示 start() def start(){ def store; def ftpClient = new FTPClient() ftpClient.connect(server)

我在FileMaker中运行了这段groovy代码,但是循环只返回一个值,我如何返回所有FileList。 在FileMaker中,println语句不起作用,只有return语句起作用,那么如何返回所有值呢 如下循环显示

        start()
        def start(){
        def store;
        def ftpClient = new FTPClient()
        ftpClient.connect(server)
        // println(ftpClient.replyString)
        ftpClient.login(user,pass)
        ftpClient.enterLocalPassiveMode()
        FTPFile[] fileslist = ftpClient.listFiles("/")
此循环只返回FileMaker中唯一的第一个值

        for(int i=0; i<fileslist.length; i++){  
          String file_name = fileslist[i].getName()
          String file_timestamp = fileslist[i].getTimestamp().getTime()
          return '|' + file_name+ '|' + '/' +file_name+'|' + '{' +file_timestamp+ '}' + '\n'      
         }     
        ftpClient.disconnect()
      }

for(inti=0;i将其放入列表并返回

start()
def start(){
  def store;
  def ftpClient = new FTPClient()
  ftpClient.connect(server)
  // println(ftpClient.replyString)
  ftpClient.login(user,pass)
  ftpClient.enterLocalPassiveMode()
  FTPFile[] fileslist = ftpClient.listFiles("/")

  // This loop just returns the only first value in FileMaker  
  List<String> mylist = new List<String>(); 
  for(int i=0; i<fileslist.length; i++){  
    String file_name = fileslist[i].getName()
    String file_timestamp = fileslist[i].getTimestamp().getTime()
    myList.add('|' + file_name+ '|' + '/' +file_name+'|' + '{' +file_timestamp+ '}');      
  }     
  ftpClient.disconnect()
  return myList;
}
start()
def start(){
def存储;
def ftpClient=新ftpClient()
ftpClient.connect(服务器)
//println(ftpClient.replyString)
ftpClient.login(用户,通过)
ftpClient.enterLocalPassiveMode()
FTPFile[]fileslist=ftpClient.listFiles(“/”)
//此循环只返回FileMaker中唯一的第一个值
List mylist=新列表();

对于(int i=0;i如果您想作为长字符串返回,则需要在循环中列出字符串,然后在循环之后连接并返回它们

def allFiles = []; 
for(int i=0; i<fileslist.length; i++){  
  String file_name = fileslist[i].getName()
  String file_timestamp = fileslist[i].getTimestamp().getTime()
  String s = '|' + file_name+ '|' + '/' +file_name+'|' + '{' +file_timestamp+ '}'
  allFiles << s
}     
ftpClient.disconnect()
return allFiles.join('\n');     
def allFiles=[];

对于(inti=0;i使用lambda表达式。简短

List<String> allFiles = Arrays.stream(filelist)
    .map(f -> String.format(“| %s | /%s | { %s }”, f.getName(), f.getName(), f.getTimestamp().getTime()))
    .collect(Collectors.toList());
List allFiles=Arrays.stream(文件列表)
.map(f->String.format(“|%s |/%s{%s}”、f.getName()、f.getName()、f.getTimestamp().getTime()))
.collect(Collectors.toList());