C# TryParse的使用尝试转换一个字符串

int.TryParse()的用法

官方定义

        // 摘要:
        //     将数字的字符串表示形式转换为它的等效 32 位有符号整数。 一个指示转换是否成功的返回值。
        //
        // 参数:
        //   s:
        //     包含要转换的数字的字符串。
        //
        //   result:
        //     当此方法返回时,如果转换成功,则包含与 s 中所包含的数字等效的 32 位无符号整数值;如果转换失败,则包含零。 如果 s 参数为 null 或 System.String.Empty、格式不正确,或者表示的数字小于
        //     System.Int32.MinValue 或大于 System.Int32.MaxValue,则转换失败。 此参数未经初始化即进行传递;最初在 result
        //     中提供的任何值都会被覆盖。
        //
        // 返回结果:
        //     如果 true 成功转换,则为 s;否则为 false。
        

可以自己写函数IntTryParse实现类似的效果
C# TryParse的使用尝试转换一个字符串

笔记

个人感觉,用传参达到返回值的目的,这样的操作原理,尤其是out这个词类似于C++中的引用符号&
另外可以使用ref
C# TryParse的使用尝试转换一个字符串

代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            //输入数字,直到转换失败
            string str;
            int[] num = new int[100];

            int i;
            for (i = 0; i < 100; i++)
            {
                //输入
                str = Console.ReadLine();

                //转换
                bool check;
                check = int.TryParse(str, out num[i]);

                //异常则退出循环
                if (check == false)
                {
                    Console.WriteLine("检测到输入异常值,已退出循环。你的输入如下:");
                    break;
                }
            }

            //输出
            int total = i;
            for (int j = 0; j < total; j++)
            {
                Console.Write("{0} ", num[j]);
            }

        }
    }
}