gpt4 book ai didi

java - Path.resolve(other) java.nio.file.Path 方法

转载 作者:搜寻专家 更新时间:2023-10-31 20:20:57 26 4
gpt4 key购买 nike

直接来自这个API :

resolve

Path resolve(Path other)

Resolve the given path against this path.

If the other parameter is an absolute path then this method trivially returns other. If other is an empty path then this method trivially returns this path. Otherwise this method considers this path to be a directory and resolves the given path against this path. In the simplest case, the given path does not have a root component, in which case this method joins the given path to this path and returns a resulting path that ends with the given path. Where the given path has a root component then resolution is highly implementation dependent and therefore unspecified.

(强调我的)

这里有点矛盾,首先他们说:

  1. 如果其他参数是绝对路径那么这个方法平凡地返回其他。

    然后他们说:

  2. 如果给定路径具有根组件,则解析高度依赖于实现,因此未指定。

绝对路径不是必须包含根组件才能成为这样吗?提前致谢。

最佳答案

对您的问题的简短回答是否定的,绝对路径不需要有根组件,但是,根据提供商的不同,它可能有。

如果我们看一下 source code for UnixPath ,我们看到,确实,如果是绝对路径,那么它会返回一个根组件,如果是绝对路径,它只会返回一个根组件。

但是,没有要求必须以这种方式实现。至少从理论上讲,getRoot() 可能返回某些内容,而 isAbsolute() 可能返回 false。在这方面,结果是不确定的。或者,以真值图形式表示:

Result of resolve() when:
getRoot()==null getRoot()!=null
isAbsolute()==true defined defined
isAbsolute()==false defined undefined

关于java - Path.resolve(other) java.nio.file.Path 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18832729/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com