我正在准备这些天的OCPJP7考试。我有两个问题并接受答案。第一个与java相关,另一个与考试成绩有关。
import java.nio.file.*;
class Test13{
public static void main(String arfd[]){
Path a = Paths.get("D:\\OCPJP7\\programs\\..\\NIO2\\SRC\\.\\Subpath.java");
a=a.normalize();
System.out.println(a);
}
}
根据上面的代码段,我预计输出为“ D:\ OCPJP7 \ programs \ NIO2 \ SRC \ Subpath.java ” 但事实并非如此。它提供“ D:\ OCPJP7 \ NIO2 \ SRC \ Subpath.java ”
据我所知,normalize()从给定路径中删除任何冗余元素,包括单点和双点。那么为什么它会删除 \ programs \ 元素?
要成为Oracle认证专家,Java 7程序员,我们必须参加两门考试;
OCA -JP(Oracle认证助理,Java 7程序员)。
Java SE 7程序员。
据我所知,我们可以按任何顺序完成两项考试。所以我打算先做Java SE 7程序员然后再做OCA。
我的问题是,在通过两项考试后,甲骨文会提供什么。 他们是否为两项考试提供两张证书?或两个证书?还有别的吗?
答案 0 :(得分:3)
据我所知,normalize()从给定中删除任何冗余元素 路径包括单点和双点。然后它为什么删除 \ programs \ element?
..
指的是父目录。换句话说,/programs
会带你前进,/..
会带你回来。
Path#normalize()
州的Javadoc
如果" .."之前是非" .."这两个名字都是名字 被认为是多余的(重复识别这些名称的过程 直到它不再适用。)
因此\\programs\\..
是多余的并已删除。
我无法回答你的第二个问题。