c# 定义变量 不用new 直接用 是怎么回事

一个类中定义了变量publicint[]Times{get;set;}这个类中的一个方法直接对Times赋值为什么不用先new出数组的长度就可以直接赋值呢木有分数了见谅... 一个类中定义了变量 public int[] Times { get; set; }
这个类中的一个方法 直接对Times赋值 为什么不用 先new出数组的长度就可以直接赋值呢
木有分数了 见谅
展开
 我来答
cydfli
推荐于2016-09-30 · TA获得超过406个赞
知道小有建树答主
回答量:273
采纳率:0%
帮助的人:207万
展开全部
    public class Program
    {
        public int[] Times { get; set; }
        public static void Main(string[] args)
        {
            Program p = new Program();
            p.Times = new int[] { 1, 2, 3 };//PASS
            p.Times[1] = 3;//没有上面这句会Fail
            int[] a=new int[]{7,8,3,2,13,32};
            p.Times = a;//PASS
            /* 对于public int[] Times { get; set; }语句,
             * 首先它只是定义Times属性是一个int[]类型,你可以直接将一个int[]
             * 类型的值或变量赋值给它,它是接受的,当然你可以赋值不同长度的
             * int[]给它,它只是对数组整体进行读写,而要取Times中的元素,则
             * 是使用的Array的索引器,这里的属性在Times[x]=y;操作中中是整体
             * 返回一个int[]数组,而后你怎么操作得看数组有哪些方法
             */
            Array.ForEach<int>(p.Times,t=>Console.WriteLine(t));
            
        }
   }
zhang399401
2014-04-12 · TA获得超过702个赞
知道小有建树答主
回答量:1347
采纳率:0%
帮助的人:934万
展开全部
具有get set访问器是称之为该类的属性,属性是可以直接类名.属性名的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
绿色的调调
2014-04-12
知道答主
回答量:18
采纳率:0%
帮助的人:11.1万
展开全部
你写了 {get;set}那就是这个类的属性了,属性是不可以用new实例化的,应该直接 {类名}.{属性名} 直接使用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
周华盛花生
推荐于2018-04-21 · TA获得超过120个赞
知道小有建树答主
回答量:135
采纳率:0%
帮助的人:66.7万
展开全部
public int[] Times { get; set; } set:就代表给这个变量赋值的权限,而且在get;set;以后,直接拿也是可以的;比如:int[] num=Times; 不过此时的Times在未赋值之前默认为:null
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式