繁体   English   中英

PHP像C#中的锯齿状数组初始化

[英]Php like jagged array initialisation in C#

PHP中存在锯齿状数组声明,如下所示:

<?php
$classmates = array ('Name' => array ('Bob', 'Jane', 'Jill'),
                    'Age' => array (18, 20, 23));

echo $classmates['Name'][1] . ' is ' . $classmates['Age'][1] . ' years old!';
?>

我们可以在C#中对数组进行相同的初始化吗?

如果是,那怎么办? 还告诉我是否可以使用数据类型List?

好吧,从字面上来讲,您可以在C#中执行以下操作:

    var arr = new Array[] { 
        new[] {"Bob", "Jane", "Jill"},
        new[] { 18,20,23 }};

我会说这可能不是一个好主意。 在C#中,这样说是更好的形式:

var arr = new[] { 
    new Person {Name = "Bob", Age = 18},
    new Person {Name = "Jane", Age = 20},
    new Person {Name = "Jill", Age = 23}};

或者,如果您不打算创建实际的Person类,则可以使用匿名类:

var arr = new[] { 
    new {Name = "Bob", Age = 18},
    new {Name = "Jane", Age = 20},
    new {Name = "Jill", Age = 23}};

您采取什么课程取决于您如何使用数组,但是可以说,在大多数情况下,首次使用并不是最佳实践。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM