我正在使用Java 8,我想使用List.stream()functionnalities 来解决我的问题.
这是我的问题:
这是Score班级(Player班级没关系):
public class Score {
private Player player;
private int score;
public Player getPlayer() {
return player;
}
public void setPlayer(Player player) {
this.player = player;
}
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
}
Run Code Online (Sandbox Code Playgroud)
在我的程序开始时,我有一个填充的玩家列表:
List<Player> players; // Populated elsewhere
Run Code Online (Sandbox Code Playgroud)
我的程序然后做它必须做的事情,我得到一个这种类型的变量:
List<List<Score>> scores; // Populated elsewhere
Run Code Online (Sandbox Code Playgroud)
现在我想为每个玩家打印一个格式化的输出,例如:
Player.getName() + " : " + averagedScore;
Run Code Online (Sandbox Code Playgroud)
其中一个值averagedScore的总和除以我的变量中此玩家得分的出现次数.score.getScore()Playerscores …
我正在尝试为String验证器创建一个Regex.我的字符串长度必须正好为8个字符,并以字母(小写或大写)或数字开头.它只能在第一个字符后面包含字母(小写和大写),数字或空格.如果找到空格,则后面只能有空格.
现在,我有第二部分的匹配组: [a-zA-Z0-9]{1,}\s*
我找不到一种方法来指定该组只有恰好有8个字符才匹配.我试过^([a-zA-Z0-9]{1,}\s*){8}$但这不是预期的结果.
以下是一些测试用例(带有尾随空格).
有效期:
9013
20130
89B
A5000000
Run Code Online (Sandbox Code Playgroud)
无效:
9013
20130
90 90
123456789
Run Code Online (Sandbox Code Playgroud) 我的脚本用于删除超过n几天的日志文件。它在特定上下文(Spring 批处理)中调用,该上下文先前已初始化多个环境变量。
这是脚本的内容:
set DAYS = 3
forfiles /p %LOG_PATH% /s /d -%DAYS % /m *.* /c "cmd /c del @FILE"
Run Code Online (Sandbox Code Playgroud)
如您所见,我无法控制LOG_PATH. 它在别处初始化并包含一个带有斜杠(而不是反斜杠)的路径,例如:D:/DATA/LOGS
当我启动这个脚本时,我得到了这个错误: The directory name is invalid.
如果我手动用反斜杠写路径,则命令成功。
那么,是否可以将环境变量隔开以便命令接受斜杠?或者你将如何在运行时用反斜杠替换斜杠?
谢谢。