日期:2014-05-18  浏览次数:20730 次

不理解的代码
C# code

    string s1 = txt1.Text.Trim(); 
  string s2 = txt2.Text.Trim(); 
  int i1, i2,sum=0; 
  if (int.TryParse(s1, out i1) == false){} 


请问各位前辈,这句代码中,我知道int.TryParse是用于类型转换的,但是那个“out i1”什么意思呢,
这个if语句是不是判断输入的字符串类型无法转换成int 类型呢?除了这个“int.TryParse(s1, out i1) == false”还有没有其他的判断方法呢。


------解决方案--------------------
out i1就是把转换结果放到i1中
if语句是判断输入的字符串类型是不是整型的字符串,如果是转换成int 类型,不是就转换失败
其他方法可以用正则
------解决方案--------------------
等价代码
? string s1 = txt1.Text.Trim();?
  string s2 = txt2.Text.Trim();?
  int i1, i2,sum=0;?
  bool isNumber = true;
? try
? {
? i1 = Convert.ToInt32(s1);
? }
? catch
? {
? isNumber = false;
? }
? if (!isNumber) { }