tankgoing
2018-02-02 06:00
采纳率: 61.3%
浏览 1.5k
已采纳

c#的分号逗号要怎么用

比如这么一段代码 里面为什么是逗号 如果我要想加一个System.Console.WriteLine的话要加在哪里 刚刚java转过来的有点不明白

  ProductModel product = null;
                try
                {
                    product = new ProductModel()
                    {
                        NO = listView1.Items[i].SubItems[5].Text,
                        Name = listView1.Items[i].SubItems[6].Text,
                        Quantity = Convert.ToDecimal(listView1.Items[i].SubItems[7].Text),
                        Price = Convert.ToDecimal(listView1.Items[i].SubItems[8].Text),
                        TotalAmount = Convert.ToDecimal(listView1.Items[i].SubItems[9].Text),
                        UomName = listView1.Items[i].SubItems[10].Text
                    };
                }
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

10条回答 默认 最新

  • suhao_0216 2018-02-06 11:48
    已采纳

    System.Console.WriteLine 这个是输出1行
    ///下面这个是类实例化 也就是声明1个类 NO , Name , Quantity 。。。 这些是这个类里面定义的属性 可以用下面的方法来赋值
    ProductModel product = new ProductModel()
    {
    NO = listView1.Items[i].SubItems[5].Text,
    Name = listView1.Items[i].SubItems[6].Text,
    Quantity = Convert.ToDecimal(listView1.Items[i].SubItems[7].Text),
    Price = Convert.ToDecimal(listView1.Items[i].SubItems[8].Text),
    TotalAmount = Convert.ToDecimal(listView1.Items[i].SubItems[9].Text),
    UomName = listView1.Items[i].SubItems[10].Text
    };
    类实例化 还可以这样
    ProductModel product = new ProductModel();
    product .NO = listView1.Items[i].SubItems[5].Text,
    和上面的效果是一样的
    System.Console.WriteLine 这个是不能写到第一种类实例化 那个{}这个大括号里的 写到括号外面就行 啊

        看到了别忘给个赞啊
    
    打赏 评论
  • 这个是.net 4.0之后加入的命名参数,相当于
    Class a=new Class();
    a.a=b;
    a.c=d;
    更详细内容自己搜索一下C# 命名参数,这个都没见过的话,那估计其它的语法糖比如 自动属性/匿名方法/Lamda表达式 这些你都要学一下了。
    https://zhidao.baidu.com/question/1733278229114380867.html

    打赏 评论
  • Silent_waters 2018-02-02 06:33

    这个是参数,所以用逗号隔开

    打赏 评论
  • qq_35883277 2018-02-02 06:54

    可以去看一下ProductModel这个结构体或者类的定义,里面应该有对应定义的ProductModel()的相关函数

    打赏 评论
  • 卡卡2000 2018-02-02 07:11

    System.Console.WriteLine 是为了输出一行;
    在类实例化完成就可以了;

                                ProductModel product = null;
                try
                {
                    product = new ProductModel()
                    {
                        NO = listView1.Items[i].SubItems[5].Text,
                        Name = listView1.Items[i].SubItems[6].Text,
                        Quantity = Convert.ToDecimal(listView1.Items[i].SubItems[7].Text),
                        Price = Convert.ToDecimal(listView1.Items[i].SubItems[8].Text),
                        TotalAmount = Convert.ToDecimal(listView1.Items[i].SubItems[9].Text),
                        UomName = listView1.Items[i].SubItems[10].Text
                    };
                                        System.Console.WriteLine(product.NO);
                }
                                catch
                                {
                                }
    
    打赏 评论
  • qq_21211547 2018-02-02 07:12

    这些是参数 需要看ProductModel() 函数写法

    打赏 评论
  • mango_love 2018-02-02 07:52

    这个花括号里面是new一个对象,然后给对象里面的属性赋值,对象的每一项都要用逗号隔开。
    如果是:
    Student() stu =new Student();
    stu.Age=18;
    stu.Name = "sum";
    这种方式是对象的每一项分别赋值。你的那种是对一个对象操作,对象里面操作要么是linq要么就是这样的,属于一个语句

    打赏 评论
  • qq_38668975 2018-02-04 08:22

    花括号里面的是一个新的对象,给新的对象赋值,对象的每一个赋值项都需要用逗号分隔开,这是C#的格式规定。

    打赏 评论
  • 叫我陛下 2018-02-06 05:16

    1、在函数体,也就是
    {

    }
    这个大括号里的东西,函数调用声明和定义自变量结束时需要加分号
    函数声明:比如 int max(a,b,c);
    定义自变量:比如 float x,y;

    2、在一句话结束时必须加分号(分号用于结束完成的语句)

    比如输入输出函数:
    printf("a word ");

    scanf("a");

    3、函数的赋值结束后必加分号
    比如

    c=a*b;
    z=x+y;

    4、函数的返回,也就是return后必须加分号
    比如 return 0;

    5、一些特殊句法不需要加分号,因为加了分号执行的顺序和结果就变了
    比如if语句中
    if(x>y)
    printf("x大于y");
    else
    printf("y大于x");
    当x>y成立时执行2,不成立执行4,但是如果你在1后加了分号,就不会执行2、4,而是执行5

    打赏 评论
  • Jarnpher 2018-02-23 01:04

    这个就是构造一个实例并初始化实例的属性值,所以用逗号,当一个语句结束的时候用分号,其他的时候基本使用逗号

    打赏 评论

相关推荐 更多相似问题