草庐IT

c# - 运行时类型的默认值

这个问题在这里已经有了答案:howtogetthedefaultvalueofatypeifthetypeisonlyknownasSystem.Type?[duplicate](3个答案)关闭9年前。对于任何给定的类型,我想知道它的默认值。在C#中,有一个名为default的关键字可以执行此操作objectobj=default(Decimal);但我有一个Type实例(称为myType),如果我这样说,objectobj=default(myType);没用有什么好的方法吗?我知道一个巨大的开关block可以工作,但这不是一个好的选择。

c# - 字符串未被识别为有效的日期时间 "format dd/MM/yyyy"

我正在尝试将我的字符串格式值转换为格式为dd/MM/yyyy的日期类型。this.Text="22/11/2009";DateTimedate=DateTime.Parse(this.Text);问题是什么?它有第二个覆盖要求IFormatProvider。这是什么?是否我也需要通过这个?如果是,如何在这种情况下使用它?编辑Parse和ParseExact有什么区别?编辑2Slaks和Sam的两个答案都对我有用,目前用户正在提供输入,但我将通过使用maskTextbox确保它们是有效的。考虑到类型安全、性能或您喜欢的其他方面,哪个答案更好 最佳答案

c# - 字符串未被识别为有效的日期时间 "format dd/MM/yyyy"

我正在尝试将我的字符串格式值转换为格式为dd/MM/yyyy的日期类型。this.Text="22/11/2009";DateTimedate=DateTime.Parse(this.Text);问题是什么?它有第二个覆盖要求IFormatProvider。这是什么?是否我也需要通过这个?如果是,如何在这种情况下使用它?编辑Parse和ParseExact有什么区别?编辑2Slaks和Sam的两个答案都对我有用,目前用户正在提供输入,但我将通过使用maskTextbox确保它们是有效的。考虑到类型安全、性能或您喜欢的其他方面,哪个答案更好 最佳答案

C# 字符串引用类型?

我知道C#中的“string”是引用类型。这是在MSDN上。但是,此代码无法正常工作:classTest{publicstaticvoidMain(){stringtest="beforepassing";Console.WriteLine(test);TestI(test);Console.WriteLine(test);}publicstaticvoidTestI(stringtest){test="afterpassing";}}输出应该是“传递前”和“传递后”,因为我将字符串作为参数传递并且它是引用类型,第二个输出语句应该识别出在TestI方法中更改的文本。但是,我得到“通过之

C# 字符串引用类型?

我知道C#中的“string”是引用类型。这是在MSDN上。但是,此代码无法正常工作:classTest{publicstaticvoidMain(){stringtest="beforepassing";Console.WriteLine(test);TestI(test);Console.WriteLine(test);}publicstaticvoidTestI(stringtest){test="afterpassing";}}输出应该是“传递前”和“传递后”,因为我将字符串作为参数传递并且它是引用类型,第二个输出语句应该识别出在TestI方法中更改的文本。但是,我得到“通过之

c# - 使用 Type 变量转换变量

在C#中,我可以将类型为object的变量转换为类型为T的变量,其中T是在Type中定义的变量? 最佳答案 这是一个转换和转换的例子:usingSystem;publicTCastObject(objectinput){return(T)input;}publicTConvertObject(objectinput){return(T)Convert.ChangeType(input,typeof(T));}编辑:评论里有人说这个回答没有回答问题。但是行(T)Convert.ChangeType(input,typeof(T))提供

c# - 使用 Type 变量转换变量

在C#中,我可以将类型为object的变量转换为类型为T的变量,其中T是在Type中定义的变量? 最佳答案 这是一个转换和转换的例子:usingSystem;publicTCastObject(objectinput){return(T)input;}publicTConvertObject(objectinput){return(T)Convert.ChangeType(input,typeof(T));}编辑:评论里有人说这个回答没有回答问题。但是行(T)Convert.ChangeType(input,typeof(T))提供

c# - C#中String和string有什么区别?

这两者有什么区别,我应该使用哪一个?strings="Helloworld!";Strings="Helloworld!"; 最佳答案 string是C#中System.String的别名.所以从技术上讲,没有区别。就像intvs.System.Int32.就准则而言,通常建议在引用对象时使用string。例如stringplace="world";同样,如果您需要具体引用该类,我认为通常建议使用String。例如stringgreet=String.Format("Hello{0}!",place);这是微软在theirexamp

c# - C#中String和string有什么区别?

这两者有什么区别,我应该使用哪一个?strings="Helloworld!";Strings="Helloworld!"; 最佳答案 string是C#中System.String的别名.所以从技术上讲,没有区别。就像intvs.System.Int32.就准则而言,通常建议在引用对象时使用string。例如stringplace="world";同样,如果您需要具体引用该类,我认为通常建议使用String。例如stringgreet=String.Format("Hello{0}!",place);这是微软在theirexamp

c# - 类型检查 : typeof, GetType,还是?

我见过很多人使用下面的代码:Typet=typeof(obj1);if(t==typeof(int))//Somecodehere但我知道你也可以这样做:if(obj1.GetType()==typeof(int))//Somecodehere或者这个:if(obj1isint)//Somecodehere就我个人而言,我觉得最后一个是最干净的,但是有什么我想念的吗?哪个最好用,还是个人喜好? 最佳答案 都是不同的。typeof采用类型名称(您在编译时指定)。GetType获取实例的运行时类型。is如果实例在继承树中,则返回true