2016-10-03 3 views
-2

入力は、空(無効である。など、それはアイデアをcrashes.Any?有効な入力でも「無効」という結果が表示されますが、その理由を知る人は誰ですか?

私は再手配コードにさまざまな方法を試してみたが、私はそれを動作させることができませんでした。 有効な入力がされます。導入されたアプリは、すべての

public class fourth extends AppCompatActivity { 


    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_fourth); 


     final Button calc = (Button) findViewById(R.id.calculeaza); 
     final EditText e1 = (EditText) findViewById(R.id.inaltime); 
     final EditText e2 = (EditText) findViewById(R.id.greutate); 
     final TextView t1 = (TextView) findViewById(R.id.rezultat); 
     calc.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 


       String text = e1.getText().toString(); 
       String text2 = e2.getText().toString(); 


       if (text == (",") || text == ("") || text == ("-") || text2 == (",") || text2 == ("") || text2 == ("-")) 
       { 

        float num1 = Float.parseFloat(e1.getText().toString()); 
        float num2 = Float.parseFloat(e2.getText().toString()); 
        float sum = (num2/((num1 * num1)/10000)); 
        t1.setText(Float.toString(sum)); 

       } else { 
        t1.setText("Invalid"); 


       } 

      } 


     }); 
    } 
} 
+0

まず、文字列を比較するには、 '=='ではなく 'equals'を使用します。 次に、空の文字列、昏睡またはマイナス記号の場合にのみ、文字列を浮動小数点数に変換しようとします。あなたはそれをどのように期待していますか? – jhamon

+0

ヒント:条件を逆転 – jhamon

+0

'入力'、 '有効'、 '無効'、 'クラッシュ'などを定義します。 – EJP

答えて

0

まずあなたの文字列比較が間違っている正常に動作しますが、このようにString#equals

を使用する必要があります。

if (text.equals(",") || text.equals("") || text.equals("-") || text2.equals(",") || text2.equals("") || text2.equals("-")) 

あなたはエラーを指定していません。しかし私の推測では、あなたのテキストを浮動小数点数に解析する行でエラーが発生するということです。 text,の場合は、意味がありません。

+0

フィードバックをいただきありがとうございます。私は明らかにnoobをコーディングしており、私は多くのことを学ぶ必要があります。 条件の逆転もまた、いくつかのタイプミスもあったし、結果コードも間違っていた - t1.setText(String.valueof(sum))はうまくいった 素敵な一日を過ごす! (弓) – lightS

+0

それはうまくいっていることを聞いて良い。あなたは正しい答えにタグを付けるのがいいですか?これは将来のGoogle検索に役立つかもしれません;) – Fastjur

+0

ここに作業コード(BMI計算機) https://github.com/hackingteam55/AV/blob/master/fourth.java – lightS

関連する問題