壹、1般用法表明

[C#]C#中ToString()和Convert.ToString()的区分。ToString()与Convert.ToString(p)

参考资料:

1、1般用法表明

ToString():是Object的恢宏方法,所以都有ToString()方法;

Convert.ToString(param):当中param参数的数据类型可以是各个基本数据类型,也能够是bool或object类对象。

二、两者的界别

诚如情状下,那两种方法都足以通用,不过当重回的数据类型中有十分大恐怕现身null值时假如调用ToString方法了,就会回去NullReferenceException,除非你要捕捉此11分再做处理,不然在那种景观下就应思量使用Convert.ToString()方法了,因为Convert.ToString(null)不会抛出格外而是回到空字符串。

主要的分别就像上所示,由于ToString()是扩展方法,扩大自Object,所以转null报那多少个。而Convert.ToString()再次来到空字符串。

唯独Convert.ToString(),作用不算太大,因为null转领悟后依旧null,””转了现在依旧””。

Convert.ToString(“”) == “”;

Convert.ToString(null) == null;

        }

之所以,协作上string.IsNullOrEmpty(Convert.ToString())依旧相比有利的。

其余,假使是跟某字符串相比较,那么使用Convert.ToString()依旧很便利的。

三、object到string的转换

从 object 到 string
差不多有三种办法,包罗显式调换和as关键词的利用:obj.ToString()、Convert.ToString()、(string)obj、obj
as string。他们都能将 object 对象调换到 string 对象。

前多少个点子1般是由其余对象获得 string
对象,它们间的区分如前文所述主要呈未来:

ToString() :假若 obj 为 null,调用 obj.ToString() 方法会导致
NullReferenceException 分外。

Convert.ToString():如果 obj 为 null,调用
Convert.ToString()会返回null。

(string):用强制调换 (string)obj 必要 obj 的运维时类型必须是
string。借使不是,就会抛出分外。

as :用 as 方法则会相对稳定性,当 obj 的运转时类型不是 string 时会回去
null 而不抛出越发。

因此在平日在大家要求得到某些对象的 string 表明方式时,我们应当利用
ToString() 和
Convert.ToString(),那时候你就得依据事态选几个,假若你能确认保障你的靶子不为
null,则多个大约。如若有望为 null,你就应该用
Convert.ToString(),假诺你指望它为 null 的时候抛出尤其,那么自然能够选拔ToString()。

ToString()那几个格局太有利了,以致于感到就它那一种方法,一般都以转从前先判别是不是为null。

ToString()和Convert.ToString()的区别

  一般景观下,这二种方法都足以通用,可是当再次来到的数据类型中有异常的大希望出现null值时如果调用ToString方法了,就会回来NullReferenceException,除非你要捕捉此万分再做处理,不然在那种地方下就应思量动用Convert.ToString()方法了,因为Convert.ToString(null)不会抛出十三分而是回到空字符串。

  金沙注册送58 1

  主要的界别就好像上所示,由于ToString()是扩张方法,扩大自Object,所以转null报这几个。而Convert.ToString()再次回到空字符串。

  可是Convert.ToString(),效能不算太大,因为:

金沙注册送58 2

        static void Main(string[] args)
        {
            string str1 = "";
            Console.WriteLine(Convert.ToString(str1) == null);  //false
            Console.WriteLine(Convert.ToString(str1) == "");    //true

            string str2 = null;
            Console.WriteLine(Convert.ToString(str2) == null);  //true
            Console.WriteLine(Convert.ToString(str2) == "");    //false

            Console.ReadKey();
        }

金沙注册送58 3

  null转了之后照旧null,””转了现在还是””。

 

  ToString()是Object的恢弘方法,所以都有ToString()方法;而Convert.ToString(param)(其中param参数的数据类型能够是各样基本数据类型,也足以是bool或object类对象。

object到string的转换

  从 object 到 string
差不多有两种艺术,包涵显式调换和as关键词的采用:obj.ToString()、Convert.ToString()、(string)obj、obj
as string。

  1. ToString() :假若 obj 为 null,调用 obj.ToString() 方法会导致
    NullReferenceException 格外。
  2. Convert.ToString():如果 obj 为
    null,调用 Convert.ToString()会返回null
  3. (string):用强制调换 (string)obj 须求 obj 的运转时类型必须是
    string。假若不是,就会抛出分外。
  4. as :用 as 方法则会相对稳定,当 obj 的运维时类型不是 string 时会回去
    null 而不抛出尤其。

  所以在日常在我们须求获得有些对象的 string 表达情势时,大家相应利用
ToString() 和
Convert.ToString(),那时候你就得依照景况选1个,借使你能确定保证你的目的不为
null,则三个大致。倘使有异常的大恐怕为 null,你就相应用
Convert.ToString(),借使您期望它为 null 的时候抛出尤其,那么自然能够选用ToString()。

  ToString()这些情势太有利了,以致于认为就它这一种方法,
壹般都以转从前先判别是还是不是为null.

一般性 object 到 string 有各个艺术(若是有object
obj):obj.ToString()、Convert.ToString()、(string)obj、obj as
string。他们都能将 object 对象转换来 string
对象。作者就讲讲他们的异同以及在实际中应当利用哪个。

二、ToString()和Convert.ToString()的区别

 

  一般情形下,这二种格局都足以通用,但是当重返的数据类型中有望出现null值时假若调用ToString方法了,就会回去NullReferenceException,除非你要捕捉此十三分再做处理,否则在那种状态下就应思考使用Convert.ToString()方法了,因为Convert.ToString(null)不会抛出十分而是回到空字符串。
主要的差别就像上所示,由于ToString()是扩充方法,扩充自Object,所以转null报那二个。而Convert.ToString()再次回到空字符串。

        前八个措施一般是由其他对象获得 string
对象,它们间的分别只表未来要转移的靶子为 null 时,假若 obj 为 null,调用
obj.ToString 方法会变成 NullReferenceException 至极,调用
Convert.ToString 不会抛出分外而回到三个 null。

  不过Convert.ToString(),效率不算太大,因为:

 

static void Main(string[] args)
    {
      string str1 = "";
      Console.WriteLine(Convert.ToString(str1) == null); //false
      Console.WriteLine(Convert.ToString(str1) == "");  //true

      string str2 = null;
      Console.WriteLine(Convert.ToString(str2) == null); //true
      Console.WriteLine(Convert.ToString(str2) == "");  //false

      Console.ReadKey();
    }

      用强制转变 (string)obj 供给 obj 的运营时类型必须是
string。要是否,就会抛出分外。

null转了随后依然null,””转了随后依旧””。

用 as 方法则会相对平静,当 obj 的运维时类型不是 string 时会回来 null
而不抛出非凡。

  所以,协作上string.IsNullOrEmpty(Convert.ToString())照旧比较有利的。

故此在普通在大家须要获得某些对象的 string 表达情势时,我们理应采纳ToString 和
Convert.ToString,这时候你就得依据气象选一个,假设你能有限帮助你的对象不为
null,则多个差不多。要是有相当的大大概为 null,你就应当用
Convert.ToString,倘若您愿意它为 null 的时候抛出非常,那么自然能够挑选
ToString。

    Console.WriteLine(string.IsNullOrEmpty(Convert.ToString(str1)));  //true
    Console.WriteLine(string.IsNullOrEmpty(Convert.ToString(str1)));  //true

 

   别的,借使是跟某字符串相比较,那么使用Convert.ToString()照旧很有益于的,例如

    if(Convert.ToString(str) == "123")
    {

    }

三、object到string的转换

金沙注册送58,  从 object 到 string
大概有几种艺术,包含显式转变和as关键词的选拔:obj.ToString()、Convert.ToString()、(string)obj、obj
as string。他们都能将 object 对象转变来 string 对象。

  前多个主意1般是由其余对象得到 string
对象,它们间的分裂如前文所述首要表今后:

ToString() :如若 obj 为 null,调用 obj.ToString() 方法会导致
NullReferenceException 相当。

Convert.ToString():如果 obj 为 null,调用 Convert.ToString()会返回null

(string):用强制转变 (string)obj 供给 obj 的运维时类型必须是
string。如若不是,就会抛出尤其。

as :用 as 方法则会绝对安静,当 obj 的运作时类型不是 string 时会回到
null 而不抛出13分。

  所以在普通在大家须要获得某些对象的 string 表达格局时,大家应该运用
ToString() 和
Convert.ToString(),那时候你就得依据事态选三个,假设你能确认保障你的靶子不为
null,则五个大概。假设有希望为 null,你就活该用
Convert.ToString(),假如您愿意它为 null 的时候抛出十三分,那么自然能够选用ToString()。

相关文章

网站地图xml地图