C#判斷輸入是否數字


方法一:

        /// <summary>
        /// 判斷輸入是否數字
        /// </summary>
        /// <param name="num">要判斷的字符串</param>
        /// <returns></returns>
        static public bool VldInt(string num)
        {
            #region
            int ResultNum;
            return int.TryParse(num, out ResultNum);
            #endregion
        }

方法二:

        /// <summary>
        /// 判斷輸入是否數字
        /// </summary>
        /// <param name="num">要判斷的字符串</param>
        /// <returns></returns>
        static public bool VldInt(string num)
        {
            #region
            try
            {
                Convert.ToInt32(num);
                return true;
            }
            catch { return false; }
            #endregion
        }

知識拓展:

parse,tryparse的區別

Convert.ToInt32、int.Parse(Int32.Parse)、int.TryParse、(int) 四者都可以解釋為將類型轉換為 int,那它們的區別是什么呢?

Convert.ToInt32int.Parse 較為類似,實際上 Convert.ToInt32 內部調用了 int.Parse:

  • Convert.ToInt32 參數為 null 時,返回 0;
  • int.Parse 參數為 null 時,拋出異常。
  • Convert.ToInt32 參數為 "" 時,拋出異常;
  • int.Parse 參數為 "" 時,拋出異常。
  • Convert.ToInt32 可以轉換的類型較多;
  • int.Parse 只能轉換數字類型的字符串。

int.TryParse 與 int.Parse 又較為類似,但它不會產生異常,轉換成功返回 true,轉換失敗返回 false。最后一個參數為輸出值,如果轉換失敗,輸出值為 0。

int m;
if(int.TryParse("2"),out m)
{
...
}
返回true ,運行{}內,並給m賦值為2;

if(int.TryParse("ddd"),out m)
{
...
}
返回false,不運行if{}內,並給m賦值為0;

 使用Parse和TryParse轉換數字字符串
基本數字類型包含Parse和TryParse方法,可用於將數字字符串轉換為指定的數字類型,例如:

TryParse方法是.NET2.0中引入的,它能提供有條件的解析。這個方法會返回一個布爾值,以指示解析是否成功,從而可以免去添加異常處理代碼的麻煩。下面的例子使用了一個Int32類型來演示TryParse的兩種形式:

在第二種形式中,第一個參數是要解析的文本字符串,第二個參數是NumberStyles枚舉類型,它說明了輸入字符串中可能包含的內容,返回值將放在第四個參數中返回。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM