小编Sto*_*ica的帖子

无法将传统for循环转换为for-each循环

由于一些莫名其妙的原因,我无法将此循环转换为更自然的for (var player in fizzPlayers) { ... }循环:

  for (var i = 0; i < fizzPlayers.length; i++) {
    var player = fizzPlayers[i];
    var val = parseInt(player.value);
    if (val != 0) {
      active.push(player);
      actfact.push(parseInt(player.value));
      actname.push(capitaliseFirstLetter(player.id));
    }
  }
Run Code Online (Sandbox Code Playgroud)

我想写这个更自然的每种方式,像这样:

  for (var player in fizzPlayers) {
    var val = parseInt(player.value);
    if (val != 0) {
      active.push(player);
      actfact.push(parseInt(player.value));
      actname.push(capitaliseFirstLetter(player.id));
    }
  }
Run Code Online (Sandbox Code Playgroud)

但它不起作用,你可以在底部的runnable代码片段中看到.

为了调试,我在循环之前插入了这段代码:

  // prints undefined... but why?
  for (var player in fizzPlayers) {
    console.log(player.value);
  }
Run Code Online (Sandbox Code Playgroud)

undefined为5名球员打印.为什么?在程序的早期有一个类似的循环,for (var player …

javascript for-loop

4
推荐指数
1
解决办法
935
查看次数

将标记中的参考链接包含在GitHub上的项目符号列表中

目前我在GitHub上的项目的README.md文件中使用此降价文本:

See the docs of [testthat][3] on how to write unit tests.

Links
-----

- http://www.rstudio.com/products/rpackages/devtools/
- https://github.com/hadley/testthat
- http://r-pkgs.had.co.nz/tests.html

---

[1]: http://www.rstudio.com/products/rpackages/devtools/
[2]: https://github.com/hadley/testthat
[3]: http://r-pkgs.had.co.nz/tests.html
Run Code Online (Sandbox Code Playgroud)

我不喜欢这种重复,但我不知道我有什么选择.如果我删除显式项目符号列表,那么GitHub将不会显示引用链接.如果我删除引用链接,那么GitHub会显示项目符号列表(当然),但上面的"testthat"之类的嵌入式链接不起作用.

有没有比复制更好的方法?我错过了什么?

markdown github

3
推荐指数
2
解决办法
2144
查看次数

如何使用Java中的递归来保留信息

基本上,每次我递归时,我都会重置变量"path",但我需要保留这些信息.另外,我不能将它作为参数传递.有没有办法做到这一点?

这是我现在的代码:

public List<Person> getDiseaseRouteTo(Person c){

    List<Person> path = new LinkedList<Person>();

    if (this.root == c) {
        path.add(c);
        } else if (this.root != c) {
            path.add(this.root);
            for (DiseaseTree child: this.getChildren()) {
                if (child.contains(c)) {
                    path.add(child.getRoot());
                    return child.getDiseaseRouteTo(c);
                }
            }
        }
        return path;
    }
Run Code Online (Sandbox Code Playgroud)

java recursion

3
推荐指数
1
解决办法
154
查看次数

`/bin/bash -c` 中的导出变量

我正在尝试在/bin/bash -c命令中导出变量。

这导致空输出:

/bin/bash -c "export FOO=foo; echo $FOO"
Run Code Online (Sandbox Code Playgroud)

这样做的正确方法是什么?

bash export quoting

3
推荐指数
1
解决办法
1041
查看次数

计算机无法从文本文件中读取最后一个数字

对于我的任务,我要制作一个程序,从文本文件中读取和打印数字,然后计算这些数字的总和和平均值.我的程序做得很好.我唯一的问题是程序不会读取我的文本文件中的最后一个数字.文件上的数字为:

3
8
1
13
18
15
7
17
1
14
0
12
3
2
5 
4 
Run Code Online (Sandbox Code Playgroud)

由于某种原因,计算机将无法读取数字4.

这是我的计划:

{ //begin testshell 
public static void main (String[] args)
{ //begin main
    System.out.println("Scores");
    Scanner inFile=null;
    try
    {
        inFile = new Scanner(new File("ints.dat"));
    }
    catch (FileNotFoundException e) 
        {
        System.out.println ("File not found!");
        // Stop program if no file found
        System.exit (0);
        }

   // sets sum at 0 so numbers will be added
   int sum=0;

   int num= inFile.nextInt();

   // starts counting the amount …
Run Code Online (Sandbox Code Playgroud)

java

3
推荐指数
1
解决办法
54
查看次数

在 BASH 中逐行比较两个文件

我需要制作一个脚本文件来读取两个文件并打印出它们之间的公共行。我知道这两个文件的行数相同,并且每一行只包含一个单词。

文件一:

Blue
Red
Orange
Green
Yellow
Blue
Run Code Online (Sandbox Code Playgroud)

文件2:

Blue
Green
Red
Purple
Yellow
Blue
Run Code Online (Sandbox Code Playgroud)

预期输出:

Blue
Yellow
Blue
Run Code Online (Sandbox Code Playgroud)

因此,在示例中,红色和绿色出现在两个文件中,但是它们不在每个文件中的同一行,因此它们被忽略。

尝试过使用 awk、grep 和 comm,但无法让它们工作。

尝试找到处理时间最短的解决方案。

string bash comparison awk grep

3
推荐指数
1
解决办法
3374
查看次数

Apache tomcat7作为windows服务

我正在尝试为Apache tomcat 7.0.45创建一个Windows服务.(在Windows 7中)

我执行了这个:

C:/tomcat7/bin> service install Mytomcat7
Run Code Online (Sandbox Code Playgroud)

已创建Windows服务.但它不会启动并抛出"特定服务器错误代码4".

你能帮忙完成创建Windows服务的步骤吗?

java tomcat

2
推荐指数
2
解决办法
3万
查看次数

查找子字符串的总出现次数

假设我想查找以下子字符串的总出现次数.

任何以1开头的子字符串,后跟任意(0或更多)0的数字,然后是1.

我为它形成了一个正则表达式: 1[0]*1

然后我用了PatternMatcher类的java做的工作休息.

import java.util.regex.*;
class P_m
{
 public static void main(String []args)
 {
     int s=0;
     Pattern p=Pattern.compile("1[0]*1");
     Matcher matcher=p.matcher("1000010101");
     while(matcher.find())
      ++s;
     System.out.println(s);
 }
}
Run Code Online (Sandbox Code Playgroud)

但问题是当我们有两个重叠的连续子串时,上面的代码输出比实际出现次数少1.例如,在上面的代码输出是2,而它应该是3.我可以修改上面的代码以返回正确的输出.

java regex

2
推荐指数
1
解决办法
87
查看次数

如何在Java中禁止FIXME注释的警告

我正在开发一个Java应用程序并使用SonarLint来测试代码质量.声纳显示错误:采取必要的操作来解决此评论所指示的问题.

对于以下代码行:

// FIXME: temp here until we drop tomee or remove all exceptions from ejb <-> non-ejb path.
Run Code Online (Sandbox Code Playgroud)

有什么方法可以抑制SonarLint中的警告吗?

java eclipse sonarqube sonarlint sonarlint-eclipse

2
推荐指数
1
解决办法
446
查看次数

对于另一列中列出的相同条目 ID,打印一列中具有最大值的行

我有一个包含 5 列的制表符分隔文件。我想在第 4 列中列出的条目的第 3 列中的值达到最大值时打印整行。输入示例:

Col1 Col2 Col3 Col4 Col5
123  456   22  NM01  +  
675  564   21  NM01  +  
342  789   12  NM01  +  
231  452   56  NM02  +  
456  783   178 NM02  +
Run Code Online (Sandbox Code Playgroud)

预期结果:

123  456   22  NM01  +  
456  783   178 NM02  +
Run Code Online (Sandbox Code Playgroud)

基本上,当 Col3 具有 col4 中条目的最大值时打印该行。

我正在尝试使用unix命令。我对此很陌生,无法找到如何查找 col3 中 col4 每种情况的最大值的示例(例如:NM01、NM02 ..)

unix bash perl awk

2
推荐指数
1
解决办法
647
查看次数