2016-10-07 20 views
-3

私のプログラムは、ユーザに選択肢(1、2、3、または0)を入力するように求めます。選択肢1は、ユーザにフィートおよびインチを入力するように要求する。選択肢2は、ユーザにセンチメートルを入力するように要求する。 私はこれを行うたびに、私は必要なもののプログラムを印刷し、二重には(下記を参照してください):Java - 2回の印刷物

Enter choice: 1 

Enter feet: 12 

Enter inches: 2 

Enter feet: 12 //This second part should not happen 

Enter inches: 2 

を私はaddConversion(...)行をコメントアウトしようとしているが、これは私が適切な選択3を印刷することはできません。私がSystem.out.println(feetInchesToCm())をコメントアウトすると、そのケースの変換は印刷されません。

次のように私のコードの主な機能は次のとおりです。

public static void main(String[] args) throws NumberFormatException, IOException 
{ 
    int choice; 

    do 
    { 
     displayMenu(); 

     choice = getInteger("\nEnter choice: ", 0, Integer.MAX_VALUE); 
     if(choice == 1) 
     { 
      addConversion(feetInchesToCm()); 
      System.out.println(""); 
      System.out.println(feetInchesToCm()); 
     } 
     else if(choice == 2) 
     { 
      addConversion(cmTofeetInches()); 
      System.out.println(""); 
      System.out.println(cmTofeetInches()); 
     } 
     else if(choice == 3) 
     {      
      if(_prevConversions == null) 
      { 
       break; 
      } 
      else if(_prevConversions != null) 
      { 
       for(int i = 1; i <= _numConversions; i++) 
       { 
        System.out.print("Conversion # " + i + ": "); 
        System.out.println(_prevConversions[i]); 
       } 
      } 
     } 
    }while(choice != 0); 
    if(choice == 0) 
    { 
     System.out.println("\nGoodbye!"); 
     System.exit(0); //Ends program 
    } 
} 

はあなたの援助のために事前にありがとうございます!

+1

に直接addConversionを呼び出し、それを印刷するために、値を保存する必要がない場合は、例えば

? –

+1

Downvoters、あなたがdownvoteしようとしている場合は、彼が間違っていたことを理解するのに役立つフィードバックをお願いします。理由のないダウン投票は、人々をサイトから遠ざけるだけです。私たちは人々が戻ってくることを望みますが、有用で有意義な質問をします。 – Dale

+1

@Dale誰かがダウンボウント後にコメントする義務はありませんが、基本的に質問してデバッグを要請し、多くの重要な詳細が欠落しているため、私はしました。 – Li357

答えて

-2

あなたが明示的にあなたの方法二回

保存に戻り値を呼んでいる、またはそれを再び呼び出すことはありません。

if(choice == 1) 
    { 
     int cm = feetInchesToCm(); 
     addConversion(cm); 
     System.out.println(""); 
     System.out.println(cm); 
    } 

それとも、あなただけ `feetInchesToCm`は何の戻り値

if(choice == 1) 
    { 
     System.out.println(""); 
     addConversion(feetInchesToCm()); 
    } 
+0

'addConversion'が呼び出されますが、ステートメントブランチから削除しますか?あなたがそれを引き起こしている 'feetInchesToCm'だと分かっていますか?あなたは、OPが答える前にそれが何であるかを明確にするのを待つことができます。 – Li357

関連する問題