C#类,OOP基础

01:在C#中,string str = null 与 string str = “” 请尽量使用文字或图象说明其中的区别

1.  str=null;只是定义一个string的对象并没有分配空间,使用前必须初始化;

     str=“”;一个为空的字符串,已经分配了空间

02:简述类和结构的相同点和不同点。并用代码举例。

答:

结构要用struct 可以定义字段,但不能直接初始化,直接初始化会报错,可以不用实例化

 

类可以字段直接初始化,要用这个类要实例化

 

03:什么是拆箱和装箱?举例说明
装箱:将值类型包装为引用类型
拆箱:将引用类型转换为值类型 
例如

objetct  obj = null;
obj = 1;  //装箱
int i = (int) obj;  //拆箱

04:编程实现一个冒泡排序
答:

 static void Main(string[] args)
        {
            int[] num = new int[] {1,2,3,4,5,6,7,8,9 };
            for (int i = 0; i < num.Length; i++)
            {
                Console.Write(num[i]+" ");
            }
            Console.WriteLine();
            for (int i = 0; i < num.Length; i++)
            {
                for (int j = i; j < num.Length; j++)
                {
                    if (num[i]<num[j])
                    {
                        int item = num[i];
                        num[i] = num[j];
                        num[j] = item;
                    }
                }
            }
            Console.WriteLine("排序后");
            foreach (var item in num)
            {
                Console.Write(item+" ");
            }
        }

05:编程实现一个递归方法
答:
5的乘阶的递归 

 static void Main(string[] args)
        {
            Console.WriteLine(Program.DiGui(5));
        }
        public static int DiGui(int i)
        {
            if (i == 1 || i == 2)
            {
                return i;
            }
            return DiGui(i - 1) * i;
        }

06:说说目前学的集合有哪些?,每一种集合的特点以及使用场景

ArrayList list<T>  HashTable Dictionary<K,V>


07:变量被标记为 “const” 和readonly” 有何不同?

const声明一个变量为常量,必须初始化,且不可被改变。

readonly声明后可初始化,也可以不初始化。构造函数中可以对该变量进行赋值,其它地方则不可被赋值

08:“out” 和 “ref” 参数有何不同?用代码举例

基本一样,但是Out先必须初始化

 public void RefShiy(ref int num)
        {

        }
        public void OutShiy(out int num)
        {
            num = 2;
        }


09:“StringBuilder” 和 “String” 有何不同? 

最大的区别就是,如果要大量的拼接的话用StringBuilder,不需要用string

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值