A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 吴承烨 中级黑马   /  2013-6-16 16:25  /  1015 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 吴承烨 于 2013-6-17 14:46 编辑

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 继承二
{
/*====================第一种====================*/
    //Main函数
    class Program
    {
        static void Main(string[] args)
        {
            //用面向对象做 让用户输入数字,转换成功后返回,失败继续
            Console.WriteLine("请您输入数字");
            string numBer = Console.ReadLine();  
            count count1 = new count(numBer);
            count1.Compute();
            Console.ReadKey();
        }
    }
    class count
    {
        public count(string numBer)
        {
            this.numBer = numBer;
        }
        //用户输入的numBer 属性
        string numBer;
        public string NumBer
        {
            get { return numBer; }
            set { numBer = value; }
        }
        //计算方法
        public void Compute()
        {
            int output;
            while (true)
            {
                if (int.TryParse(numBer, out output) == true)
                {
                    Console.WriteLine("转换成功,结果为{0}", output);
                    break;
                }
                else
                {
                    Console.WriteLine("转换失败,请重新输入");
                    numBer = Console.ReadLine();
                }
            }
        }
    }
}
/*====================第一种====================*/
/*====================第二种====================*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 继承二
{
    #region 面向对象第一
    //Main函数
    //class Program
    //{
    //    static void Main(string[] args)
    //    {
    //        //用面向对象做 让用户输入数字,转换成功后返回,失败继续
    //        Console.WriteLine("请您输入数字");
    //        string numBer = Console.ReadLine();  
    //        count count1 = new count(numBer);
    //        count1.Compute();
    //        Console.ReadKey();
    //    }
    //}
    //class count
    //{
    //    public count(string numBer)
    //    {
    //        this.numBer = numBer;
    //    }
    //    //用户输入的numBer 属性
    //    string numBer;
    //    public string NumBer
    //    {
    //        get { return numBer; }
    //        set { numBer = value; }
    //    }
    //    //计算方法
    //    public void Compute()
    //    {
    //        int output;
    //        while (true)
    //        {
    //            if (int.TryParse(numBer, out output) == true)
    //            {
    //                Console.WriteLine("转换成功,结果为{0}", output);
    //                break;
    //            }
    //            else
    //            {
    //                Console.WriteLine("转换失败,请重新输入");
    //                numBer = Console.ReadLine();
    //            }
    //        }
    //    }
    //}
    #endregion
    class First
    {
        //Main函数
        static void Main(string[] args)
        {
            Console.WriteLine("请您输入数字");
            count count1 = new count();
            int numBer = count1.Fanhui();
            Console.WriteLine("转换成功值为{0}",numBer);
            Console.ReadKey();
        }
    }
    class count
    {
        public int Fanhui()
        {
            while (true)        //循环到转换成功为止
            {
                try
                {
                    int numBer = Convert.ToInt32(Console.ReadLine()); //判断能不能转换
                    return numBer; //返回转换成功后的值
                }
                catch
                {
                    Console.WriteLine("输入错误,请重新输入"); //失败继续
                }
            }
        }
    }
}
学面向对象时候,哪种方法更好

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

2 个回复

倒序浏览
方法是日积月累的,学习方法没有最好的,脚踏实地,慢慢就有方法了
回复 使用道具 举报
个人倾向于后面那个代码少的。!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马