所以我对Javascript世界非常新.我在代码战中练习,必须分析一个引脚,以确保它只包含数字,并且是4或6个字符.我查看了最聪明的代码,答案是:
function validatePIN(pin) {
return /^(\d{4}|\d{6})$/.test(pin)
}
Run Code Online (Sandbox Code Playgroud)
我以前从未见过"/ ^(\ d {4} |\d {6})$ /"位.谁能告诉我这是什么叫所以我可以自己研究一下,或者告诉我它是如何工作的细分?
我已经学习了一些OCPJP 7认证的书籍,在内部课程章节中有一些奇怪/不完整的信息.我试图在方法中创建一个接口,但似乎你不能这样做,你只能在方法中创建类.你有什么理由不能这样做,或者它只是一个缺失的功能?
示例代码:
public class Outer {
public void method() {
class C {} // allowed
interface I {} // interface not allowed here
}
}
Run Code Online (Sandbox Code Playgroud) 我刚刚开始使用Sonar,我有一个JDK 8项目.到目前为止我唯一遇到的问题是:
Reorder the modifiers to comply with the Java Language Specification.
Run Code Online (Sandbox Code Playgroud)
这种情况发生在接口中的默认方法中,例如
default boolean isValid([params here]) {
/*method body here*/
}
Run Code Online (Sandbox Code Playgroud)
我知道这确实是一个小问题,但我不想禁用任何规则,所以你如何解决它?
非常感谢你!
ps我在谷歌上没有找到任何东西,我知道这个规则意味着什么(我已经阅读了它的描述),但我无法弄清楚如何处理默认关键字.
更新:它看起来像一个bug,我曾报道在这里,https://jira.codehaus.org/browse/SONARJAVA-590 更新2:看起来它已经固定,它会在2.4版本中提供.