2017-08-14 71 views
-1

我正在將數據保存在我的Firebase數據庫中,我想要顯示它。這工作,但我得到一個異常,當我說textview.setText(「Bla」+對象);發生異常是因爲result1和result2變量,但我不知道如何解決這個問題。它發生在setBias方法中。Android - NumberFormatException - 用於輸入字符串

public static class BetViewHolder extends RecyclerView.ViewHolder { 
    TextView bias, foodEp, profit; 
    View resultColor; 
    double result1; 
    double result2; 
    double result; 

    public BetViewHolder(View itemView) { 
     super(itemView); 
     bias= (TextView) itemView.findViewById(R.id.bias); 
     foodEp= (TextView) itemView.findViewById(R.id.food); 
     profit= (TextView) itemView.findViewById(R.id.profit); 
    } 

    public void setBias(String biasFoll) { 
     bias.setText("Bias: " + biasFoll); 
     result1 = Double.parseDouble(bias.getText().toString()); 
    } 

    public void setFoodEp(String foodEpsa) { 
     foodEp.setText(foodEpsa); 
     result2 = Double.parseDouble(foodEp.getText().toString()); 
     result = result1 * result2; 
     profit.setText(String.valueOf(result)); 
    } 
+0

你可以在這裏發佈你的logcat錯誤嗎? – akhilesh0707

+0

java.lang.NumberFormatException:對於輸入字符串:「bias 88」 – John

+0

你知道java嗎?你怎麼能解析字符串「偏見88」加倍 – akhilesh0707

回答

1

我有2個想法:

1)MB,你應該改變result1 = Double.parseDouble(bias.getText().toString());result1 = Double.parseDouble(biasFoll);? 2)圍繞你的「result1 = Double.parseDouble(bias.getText()。toString());」與try {} catch (NumberFormatException e) {}並設置一些默認值result1

1

您正在試圖字符串轉換爲雙:

bias.setText("Bias: " + biasFoll); 
result1 = Double.parseDouble(bias.getText().toString()); 

這是不可能的,這就是爲什麼你得到NumberFormatException

+0

是的我知道,我怎麼能解決它? – John

+0

你想在那裏做什麼? – Bob

+0

我想要將結果1中的偏差值和foodEp的值保存在result2中,以便將值乘以並顯示在文本視圖上。我認爲我可以這樣做,但是這阻止了我在我的文本視圖中編寫任何預先定義的文本(「偏差:」)。 – John

1

使用以下

Remeber你的字符串必須由一個數值

bias.setText(biasFoll); 

result1 = Double.parseDouble(bias.getText().toString().trim()); 
1

無法解析字符串bias 88翻一番,我已在你的方法的一些變化查看一下,嘗試

public void setBias(String biasFoll) { 
    bias.setText("Bias: " + biasFoll); 
    result1 = Double.parseDouble(biasFoll); 
} 
相關問題