有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java数组循环将自身乘以1024

我试着制作一个数组,这样无论字节输入是什么,接下来的三个答案都将自身乘以1024。目前,输入都是相同的。如果有人能帮忙,我将不胜感激

public class ExcerciseFour {
    static Scanner keyboard = new Scanner(System.in);

    public static void main(String[] args) {
    final String [] UNITS = {"B","KB","MB","GB"};

    double bytes;
    double kilobytes;
    double megabytes;
    double gigabytes;

    System.out.print("Enter in bytes: ");
    bytes = keyboard.nextDouble();
    kilobytes = (bytes/1024);
    megabytes = (bytes/1048576);
    gigabytes = (bytes/1073741824);

//  System.out.println(bytes+"bytes"+" is equivalent to "+kilobytes+(UNITS[1])+", "+megabytes+UNITS[2]+", "+gigabytes+UNITS[3]+".");

    double [] conversion = new double [3];
    for(int i=0;i<conversion.length;i++){
            conversion[i]=bytes/1024;
        }
        System.out.println(Arrays.toString(conversion));
    }

}

共 (2) 个答案

  1. # 1 楼答案

    有点像

     val = bytes
     for(int i=0;i<conversion.length;i++)
     {
            conversion[i]=val;
            val /= 1024
     } 
    
  2. # 2 楼答案

    它们都是相同的,因为您将所有bytes/1024分配给它们。既然bytes没有改变,它们应该都是一样的

    为了解决这个问题,你可以用一个辅助变量除以1024,然后重新分配给它自己