моё решение:
public class Solution {
public static void main(String[] args) throws IOException {
try (Scanner scanner = new Scanner(System.in)) {
Path filePath = Path.of(scanner.nextLine());
Path fileNewPath = Path.of(scanner.nextLine());
if(!Files.exists(filePath)){
Files.createFile(filePath);
}
else if(Files.exists(filePath)&!Files.exists(fileNewPath)){
Files.move(filePath,fileNewPath);
}
else if(Files.exists(filePath)&Files.exists(fileNewPath)){
Files.delete(filePath);
}
}
}
}
готовое:
public class Solution {
public static void main(String[] args) throws IOException {
Scanner scanner = new Scanner(System.in);
Path filePath = Path.of(scanner.nextLine());
Path fileNewPath = Path.of(scanner.nextLine());
if (Files.notExists(filePath)) {
Files.createFile(filePath);
} else if (Files.notExists(fileNewPath)) {
Files.move(filePath, fileNewPath);
} else {
Files.delete(filePath);
}
}
}
такой булин if(!Files.exists(filePath)) вместо if (Files.notExists(filePath)) занимает ли больше времени на обработку?
по условию: Если же файл по первому пути существует, нужно переместить этот файл по второму пути, но только в том случае, если по второму пути файла нет. по готовому решению, проверка только на "если по второму пути файла нет" , откуда компилятор знает что по первому пути 100% есть файл, не совсем понятно. И в последнем тоже делаю лишние проверки, дело в принципе работы if else может быть?