2014-03-29 122 views
0

我正試圖創建一個非常基本的計算器應用程序。我遇到小數點問題。我對C#很新,所以我不知道該怎麼做。當我點擊我的計算器中的小數點按鈕時,我希望它檢查文本框中的數字,看看它是否已經有小數。如果是這樣,那就什麼也不做。如果它還沒有小數,則將小數附加到數字上。基本上我想讓用戶不能在一個操作數中輸入一個以上的小數。如何檢查並查看數字是否包含小數?

我該如何去測試這個數字,看它是否包含小數?

謝謝你的幫助。

回答

5

那麼它聽起來像你真正想要測試是否已經包含了一個小數點 - 不是

假設你不是要國際化這一點,你可能只是想:

if (textBox.Text.Contains(".")) 
{ 
    // We've already got a decimal point; skip this input however you want 
} 

(注意這兩個...Contains('.')...Contains(".")會工作,但前者使用LINQ不必要的,所以我改爲後者。)

如果要國際化,你想使用Culture.CurrentCulture.NumberFormat.NumberDecimalSeparator,來檢測你應該在按鈕上顯示什麼,以檢查它是否是已經存在的,什麼事後補充。這一切都會影響你最終解析數字的方式。

+1

你怎麼知道語言的所有這些內部?好的,你是C#深入的作者,但是如何? –

+0

@AmitJoki:花了很多時間使用語言和閱讀規範,真的... –

+1

@AmitJoki:是的,但我恐怕這種事情真的不適合SO評論線程。 –

0

改變輸入字符串,然後檢查使用

String s1="20.12" 
b = s1.Contains("."); 

,它將返回true,如果它存在

相關問題