gpt4 book ai didi

Java:像 C# 一样的通用键值

转载 作者:行者123 更新时间:2023-12-02 05:09:14 25 4
gpt4 key购买 nike

我目前正在寻找一种用java 来做类似c# 的事情的方法。例如在 ASP MVC 中你可以这样写:

DoMethod(new {key = value, another = value2});

有什么好的方法可以在java中做到这一点吗?我只尝试过一个数组:new object[] {value, value...}然而,这样我就不能得到键,而只能得到值。

我知道你可以做到:

HashMap<String, object> map = new HashMap();
map.put("key", "value");
map.put("anoter", "value2");
DoMethod(map);

不幸的是,如果您需要做很多事情,那么这是一种麻烦的方法。

干杯!

最佳答案

不要重新发明轮子。如果您可以自由使用第 3 方库,您可以尝试 Google Guava,它提供强类型方法,无需静态初始化程序和子类、代理 Entry/Pair 之类可能看起来不类型安全的类或可变参数:

使用builder pattern :

final Map<String, Object> map = new ImmutableMap.Builder<String, Object>()
.put("key", "value")
.put("anoter", "value2")
.build();
DoMethod(map);

甚至是shorter approach如果条目数最多为 5(请参阅重载为什么所有这些 map 工厂方法都是类型安全的):

final Map<String, Object> map = ImmutableMap.<String, Object>of("key", "value", "anoter" "value2");
DoMethod(map);

关于Java:像 C# 一样的通用键值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27471301/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com