2012-10-14 26 views
0

我在这里找不到语法错误。任何人都可以帮我找到这个吗?找到2个论据的最小值

问题是这样的 - (2)编写一个程序,将2个值作为命令行参数,并使用if-else查找这2个值的最小值。

类MinNumber {

{ 
public static void main(String [] myArray){ 

    int length = myArray.length; 

    if((myArray[0][0]) < (myArray[0][1])){ 
     System.out.println("Minimum number is : " + myArray[0][0]); 
     } 
    else{ 
     System.out.println("Minimum number is : " + myArray[0][1]); 
     } 
} 

回答

2

不能比较String值与<,因为它不是原始 另外阵列是单个阵列不是双阵列。

下面是不安全的代码,但最简单的:

if (Integer.parseInt(myArray[0]) < Integer.parseInt(myArray[1])) { 
     System.out.println("Minimum number is : " + myArray[0]); 
    } else { 
     System.out.println("Minimum number is : " + myArray[1]); 
    } 
+0

任何建议,请:( –

+0

感谢朋友:)我会试试这个,并得到回复 –

+0

感谢朋友。这是行得通的。非常感谢。我会在5分钟后接受答案。上帝保佑你 ! –

0

myArray[0][0]这就是你如何访问二维数组的元素。对于一维数组而言,myArray[0]就足够了。

所以,你应该分析出myArray[0]myArray[1]中的数字,然后对它们进行比较。

0

这是你的问题。 在你的主,注意一维数组?

public static void main(String [] myArray) 

在您的身体中,您正在以二维数组的形式访问它。

if((myArray[0][0]) < (myArray[0][1])){ 
    System.out.println("Minimum number is : " + myArray[0][0]); 
    } 

默认情况下,主方法接受一个参数:一个String类型的元素数组。 我假设你真的打算从myArray(作为单维数组)访问字符串,并相应地继续。

这如果需要的话也可参考:http://docs.oracle.com/javase/tutorial/getStarted/application/index.html

0

通过命令行采取的参数是你首先需要将其转换为整数或浮点数做一些比较字符串类型。