Ребята, помогите, пожалуйста. Знаю, что код немного грязноват, но хотелось бы понять, в чем дело, почему код не проходит второе условие.
package com.javarush.task.pro.task15.task1504;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.Scanner;
/*
Перепутанные байты
*/
public class Solution {
public static void main(String[] args) {
Scanner console = new Scanner(System.in);
byte[] bufferInputFile;
try(var inputFile = Files.newInputStream(Paths.get(console.nextLine()));
var outputFile = Files.newOutputStream(Paths.get(console.nextLine()))) {
bufferInputFile = inputFile.readAllBytes();
int sizeFile = bufferInputFile.length;
int i;
int j;
if(sizeFile % 2 == 0) {
i = 0;
j = 1;
while(((sizeFile/2) - j >= 0)) {
byte num = bufferInputFile[i];
bufferInputFile[i] = bufferInputFile[i + 1];
bufferInputFile[i + 1] = num;
i = i + 2;
j++;
}
}
else {
i = 0;
j = 1;
while(((sizeFile/2.0) - j) > 0) {
byte num = bufferInputFile[i];
bufferInputFile[i] = bufferInputFile[i + 1];
bufferInputFile[i + 1] = num;
i = i + 2;
j++;
if(((sizeFile/2.0) - j) < 1){
j++;
continue;
}
}
}
outputFile.write(bufferInputFile);
}
catch (IOException e) {
e.printStackTrace();
}
}
}