2016-04-15 40 views
-5

我有BMI計算器應用程序,需要一些輸入並將其放入「EditText」。這是我想要做的:
如果輸入是170,它將變成1.70
如果輸入是1.70,它不會改變。把點的字符串值(android java)

這是我的代碼有:

String weight = editText.getText().toString(); 

回答

0

廣東話將字符串轉換爲整數,並採取模數100 CMS併除以100得到以米爲單位?

您可以將字符串重量爲int這樣

int wgt = Integer.parseInt(weight); 

然後分離米和釐米。

int mtrs = wgt/100; 
int cms = wgt % 100; 

然後結合兩種

String result = mtrs + "." + cms; 
+0

我不明白..你能向我解釋嗎? –

+0

你可以轉換的字符串'weight'爲int這樣'INT WGT =的Integer.parseInt(重量);' 'INT中期審查= WGT/100;'' INT CMS = WGT%100;' '字符串結果= mtrs +「。」 + cms;' – jgm

+0

@דורעזרא它工作嗎?它應該工作。 – jgm

0

嘗試這樣的事情

float value = Float.parse("170"); 
editText.setText(String.Format(Locale.ENGLISH,"%,02f", value/100f)) 
+0

其說「無法解析方法」解析(java.lang.String)'「 –

+0

它叫做parseFloat,我不應該在Chrome中開發:-) http://developer.android.com/reference/java/lang/Float.html# parseFloat(java.lang.String) –

+0

,你必須添加一些如果例如'if(value <100)//不除以100' –

0

我發現這樣工作的:我把用戶投放數量,然後在 「170/100」 + 「0」 給了我1.70