当转换为MB时,如何使用余数运算符来获取剩余的KB


public class MegaByteConverter {
public static void main(String[] args) {
printMegaBytesAndKiloBytes(2500);
}
public static void printMegaBytesAndKiloBytes(int kiloByte) {
if (kiloByte < 0) {
System.out.println("Invalid Value");
}
System.out.println(kiloByte + " KB =" +
kiloByte / 1024 + " MB AND " + (kiloByte / 1024) % kiloByte + " KB");
}
}

我无法获得剩余的KB。CCD_ 1有问题。

在执行%操作之前不需要执行(kiloByte/1024)。这就是你问题的原因。

您所拥有的:

int kiloByte = 2500;
int megaByte = (kiloBytes / 1024); // 2500 / 1024 == 2
int remainder = megaByte % 1024;   // 2 % 1024 == 2 which is not what you want

相比:

int kiloByte = 2500;
int megaByte = (kiloBytes / 1024); // == 2 (MB)
int remainder = kiloBytes % 1024;  // == 452 (KB) which is your desired outcome

最新更新