2011-08-10 152 views
0

我正在写一个代码,它计算我的args变量中的最大数量以及args中最高和最低整数之间的最大差异。参数中整数的最大和最大差异变量

目前我的代码看起来是这样的:

public int max(int [] args) {//array of ints 
    int m = args[0]; // first element 

    //initialisation; condition; update 
    for (int j = 1; j < args.length; ++j) { 
     // statement in a block: 
    if (m < args[j]) { 
     m = nums[j]; 
     // if m is less than the j-th element 
     // then store this new smaller value 
     } 
    } 
    return m; 

}

public int min(int [] args) {//array of integerss 
     int mi = nums[0]; // first element 

     //initialisation; condition; update 
     for (int j = 1; j < args.length; ++j) { 
      // statement in a block: 
      if (mi > args[j]) { 
       mi = args[j]; 
      // if m is greater than the j-th element 
      // then store this new largest value 
     } 
    } 
     return mi; 

} // 平均计算除以数之和超过计数

public void main(String [] args) { 
     System.out.println(args[0]); 

     SimpleCalc fm = new SimpleCalc(); 
     **System.out.println(fm.max(nums));** 
     **System.out.println(fm.max(nums) - fm.min(nums));** 

它返航值,当我使用数组,但它似乎没有与args编译。我不知道如何解决这个问题。

回答

0

看来你有max()一个错字:

m = nums[j]应该m = args[j]

min()int mi = nums[0];也许应该int mi = args[0];

也,在哪里呢nums [主]从何而来?你将它传递给max()min()

2

它不会编译,因为args,在main方法是String秒的阵列之前,应该创建这个数组。你的方法以一组int作为参数。因此,您应该将args阵列String s转换为int s的阵列,并将此新阵列的int s传递给您的minmax方法。使用Integer.parseIntString转换为int