RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 955263
Accepted
Mcile
Mcile
Asked:2020-03-12 04:25:14 +0000 UTC2020-03-12 04:25:14 +0000 UTC 2020-03-12 04:25:14 +0000 UTC

C# 多维关联数组或属性重载

  • 772

学过java script或者php的,后来转学C#的,应该会懂我的吧。如果没有强类型和类型转换的多维关联数组,它们如何管理不善?一般来说,情况是这样的——可以写一段程序,限制为10,000个字符,任何Hashtable OR Dictionary都无法加载你自己的任何内容。使用多维关联数组的整个美妙之处在于,您可以快速 - 尽可能快地按键访问其元素 - 无论是数字还是字符串。在 PHP 中,这样的例子是

['pets'=>['cat','dog','hamster'],0=>['domestic','wild'],'properties'=>['fluffiness'],25=>[1985 , 1990,1995]]

我阅读了 C# 论坛 - 他们说 - 为什么需要关联数组?- 使用类,这当然很棒,但是如何在其他语言中访问这些类的属性(这里我们指的是世界不同语言的字母表\u200b\u200b和C#是否支持UTF-8 -例如,用俄语创建一个类属性?)还是按数字?以及如何将属性添加到 C# 中的现有对象、从对象中删除属性,或者将值分配给与该对象的属性中指定的类型不同的对象属性?

在 php 中,我会这样做:

class a
{
    protected $params = [];
    public function __set($name, $value){
        $this->params['$name'] = $value;
    }
    public function __get($name){
        return $this->params['$name'];
    }
}

$a_obj = new a();

$a_obj->some_param = [1987,'name'=>'Hero'];

echo $a_obj->some_param[0];
echo $a_obj->some_param['name'];

将输出 1987Hero

一般来说 - 亲爱的 C# 程序员,帮助我们理解 - 你如何处理数据 - 你不知道的类型和数量 - 也许你写了一些你的拐杖,比如重载方法 - 查看传入的数据类型数据所属,以指定的数据类型在 LIST 中输入 - 再次,如何将具有特定索引的数据放入 LIST 工作表,例如 [25=>'mehanic', 58=>'auto'] - 它们是通常随机放置在那里 - stack [0=>'mehanic' ,1=>'auto'] 一般来说,对于那些不明白的人 - 告诉我,我会解释我的问题。

PS这个理解主题大大减慢了对整个语言的理解,因此它似乎在使用中存在某种缺陷。感谢您的理解和阅读

添加了 2019 年 3 月 25 日遇到 Microsoft 的建议

var contacts = new[]
{
    new {
        Name = " Eugene Zabokritski",
        PhoneNumbers = new[] { "206-555-0108", "425-555-0001" }
    },
    new {
        Name = " Hanying Feng",
        PhoneNumbers = new[] { "650-555-0199" }
    }
};

资源

c#
  • 2 2 个回答
  • 10 Views

2 个回答

  • Voted
  1. Best Answer
    Mcile
    2020-03-26T03:07:07Z2020-03-26T03:07:07Z

    通过应用以下构造来实现多维关联数组

    var contacts = new[]
    {
        new {
            Name = " Eugene Zabokritski",
            PhoneNumbers = new[] { "206-555-0108", "425-555-0001" }
        },
        new {
            Name = " Hanying Feng",
            PhoneNumbers = new[] { "650-555-0199" }
        }
    };
    

    微软来源

    此外,对于那些第一次接触强类型编程语言的人,本文将有所帮助。在这里,您将找到与 JS 的类比,并作为使用回调函数的示例。

    • 0
  2. NewView
    2020-03-12T05:19:25Z2020-03-12T05:19:25Z

    在 C# 中,对于国语,有Culture System.Globalization的概念

    您可以通过运行查看当前语言:

    Console.WriteLine(System.Globalization.CultureInfo.CurrentCulture.ToString());
    

    改变文化:

     System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo("ru-RU");
     System.Threading.Thread.CurrentThread.CurrentUICulture = new CultureInfo("ru-RU");
    

    国际化:使应用程序在没有语言或文化障碍的情况下可用。语言和文化信息来自资源,并未硬编码到应用程序中。
    本地化:针对特定语言环境翻译和启用产品。基于资源文件,应用程序被翻译成语言和文化。

    在此处阅读更多信息https://docs.microsoft.com/en-us/dotnet/standard/globalization-localization/

    有许多第三方本地化工具,例如https://marketplace.visualstudio.com/items?itemName=PhilJollans.Multi-LanguageforVisualStudio

    试试这个或你选择的其他工具,不要从“手动”编辑开始。

    • -1

相关问题

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    根据浏览器窗口的大小调整背景图案的大小

    • 2 个回答
  • Marko Smith

    理解for循环的执行逻辑

    • 1 个回答
  • Marko Smith

    复制动态数组时出错(C++)

    • 1 个回答
  • Marko Smith

    Or and If,elif,else 构造[重复]

    • 1 个回答
  • Marko Smith

    如何构建支持 x64 的 APK

    • 1 个回答
  • Marko Smith

    如何使按钮的输入宽度?

    • 2 个回答
  • Marko Smith

    如何显示对象变量的名称?

    • 3 个回答
  • Marko Smith

    如何循环一个函数?

    • 1 个回答
  • Marko Smith

    LOWORD 宏有什么作用?

    • 2 个回答
  • Marko Smith

    从字符串的开头删除直到并包括一个字符

    • 2 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5