2012-10-14 28 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

通過命令行採取的參數是你首先需要將其轉換爲整數或浮點數做一些比較字符串類型。