找到2个参数的最小值

时间:2012-10-14 05:56:54

标签: java arrays command-line if-statement

我在这里找不到语法错误。有谁能帮我找到这个?

问题是这个 - (2)写一个程序来获取2个值作为命令行参数,并使用if-else找到那些2的最小值。

class 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]);
        }
}

4 个答案:

答案 0 :(得分:2)

您无法将String值与<进行比较,因为它不是原始值 Array也是单个数组而不是双数组。

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

    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]);
    }

答案 1 :(得分:0)

myArray[0][0]这就是你如何访问二维数组的元素。 myArray[0]足以用于一维数组。

因此,您应该解析myArray[0]myArray[1]之外的数字并进行比较。

答案 2 :(得分:0)

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

public static void main(String [] myArray) 

在您的身体中,您将其作为2D阵列进行访问。

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

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

如果需要,请参考:http://docs.oracle.com/javase/tutorial/getStarted/application/index.html

答案 3 :(得分:0)

命令行采用的参数是字符串类型,首先需要将它们转换为整数或浮点数来进行数字比较。