无论环境如何,如何创建一个表示no path的java.nio.Path?
我无法调用Path.of(<String>)
并保证生成的路径指向无效的文件或目录。
我正在寻找的是,比使用null
值,是否存在一种更安全的方式表示空路径/无效路径。
根据您的用例,有两个选项:
Optional<Path>
并返回Optional.empty()
表示没有路径。我不会真正尝试创建无效的Path
。不能以这种方式使用它。如果您有一个可以返回Path
的函数,但在某些情况下却不能,则最好的方法是返回Optional<Path>
。
优点是,您将强迫任何调用此函数的人检查是否存在无效的Path
。与返回null
不同,后者在调用方忘记检查的情况下,稍后将使程序崩溃并带有NullPointerException
。
如果要避免使用null,请使用Optional,然后可以测试是否存在null。