2017-12-03 19 views
-1

私は言いたいことがわかりませんメソッドでコントロールステートメントを使用するにはどうすればよいですか?可能であれば

お金(); < 1000およびhouse();お金場合==小さなプリントは)(あなたが悪い

または

です。 > = 1000および< 5000およびhouse();あなたの[OK]を、比較することの両方からごあまりにも豊富な

package ArrayTest; 

import java.util.Scanner; 

/** 
* Created by quwi on 02/12/2017. 
*/`enter code here` 
public class Happyness { 
    private static Scanner scanner = new Scanner(System.in); 


    public static void main(String[] args) { 
//  house(); 
//  money(); 
     comparison(); 


    } 

    private static void house() { 


     //  getting user input and using the switch statement to see the size 
     //  of their house 

     System.out.println("Please enter the size of your house "); 
     String cap = scanner.next(); 

     switch (cap) { 
      case "small": 
       System.out.println("you have a small house it means your poor"); 
       break; 
      case "normal": 
       System.out.println("your house normal, it mean your not poor nor rich"); 
       break; 
      case "large": 
       System.out.println("your house is big it means your rich"); 
       break; 
      default: 
       System.out.println("please choose between: small, normal or large"); 
       break; 
     } 
    } 


    private static void money() { 

     System.out.println("please enter a number"); 
     int wage = scanner.nextInt(); 
     if (wage < 1000) { 
      System.out.println("your poor"); 
     } else if (wage >= 1000 && wage < 5000) { 
      System.out.println("your not poor, your OK"); 
     } else if (wage > 5000) { 
      System.out.println("your rich, Give me money"); 
     } else { 
      System.out.println("please enter a number nothing else"); 
     } 
    } 

    private static void comparison() { 


     System.out.println("please enter a number"); 
     int decision = scanner.nextInt(); 

     switch (decision) { 
      case 1: 
       money(); 
       break; 
      case 2: 
       house(); 
       break; 
      case 3: 
       money(); 
       house(); 
       break; 

      default: 
       System.out.println("Please choose 1, 2 or 3"); 
     } 
    } 

} 
+0

ここに投稿したコードの何が間違っていますか? –

+0

'money()'と 'house()'の両方に基づいて判断するには、どちらも値を返す必要があります。 'comaprison()'では、 'int amount = money()'のようなものがあります。 – c0der

答えて

0

使用の戻り値を印刷するには、通常に==れます。

private static String money() { 

    System.out.println("please enter a number"); 
    int wage = scanner.nextInt(); 
    if (wage < 1000) { 
     return "poor"; 
    } else if (wage >= 1000 && wage < 5000) { 
     return "ok"; 
    } else if (wage > 5000) { 
     return "rich"; 
    } else { 
     //ask for input again or exit, whatever 
    } 
} 

house()と同じです。次に、別の方法で両方の戻り値を比較します。

+0

それは動作していないようですが、返されましたが、 "poor"、 "ok"または "リッチ" –

+0

それは動作していないようです、私はリターンを追加しましたが、それは "貧しい"、 "大丈夫"または "豊かな"を印刷するようではありません。最後のリターンも混乱しています。それは返す必要があります文字列がintを見つけたと言います。 –

関連する問題