Wie kann man eine java.nio.Path erstellen, die keinen Pfad unabhängig von der Umgebung darstellt?

Ich kann Path.of(<String>) nicht aufrufen und garantieren, dass der resultierende Pfad auf eine ungültige Datei oder ein ungültiges Verzeichnis verweist.

Ich suche nach einer sichereren Möglichkeit, einen leeren / ungültigen Pfad darzustellen, als mit einem null -Wert.

1
Louis-Jacob Lebel 20 Jän. 2019 im 03:48

3 Antworten

Beste Antwort

Abhängig von Ihrem Anwendungsfall gibt es einige Optionen:

3
casablanca 20 Jän. 2019 im 00:59

Ich würde nicht wirklich versuchen, ein ungültiges Path zu erstellen. Es ist nicht dazu gedacht, auf diese Weise verwendet zu werden. Wenn Sie eine Funktion haben, die ein Path zurückgeben könnte, in bestimmten Fällen jedoch nicht, ist es am besten, Optional<Path> zurückzugeben.

Der Vorteil ist, dass Sie jeden, der die Funktion aufruft, zwingen, nach dem Fall zu suchen, in dem kein gültiges Path vorhanden ist. Im Gegensatz zur Rückgabe von null, bei der der Anrufer, wenn er vergisst, danach zu suchen, das Programm später nur mit einem NullPointerException in die Luft jagt.

2
jbx 20 Jän. 2019 im 01:07

Wenn Sie Nullen vermeiden möchten, verwenden Sie Optional und testen Sie dann auf Null / Gegenwart.

0
cgp 20 Jän. 2019 im 00:56