问题标签 [generic-method]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
180 浏览

r - 对通用 S4 方法使用 do.call

我有一个参数列表,想通过 do.call 调用 B(var3=list(1:3))。但是下面的例子只调用了 dispatch “missing”的方法。如何访问调度“ANY”的方法?

0 投票
3 回答
81 浏览

java - 在泛型方法中检查类型

我知道是否可以在方法中使用 if 语句来检查所用泛型的类型。在让我思考这个问题的情况下,我想以不同的方式处理一个非常基础Point2D的课程和一个Point3D课程。在我需要访问的 3D 点的情况下,Point3d.z我不确定这是否会导致问题 我想做的伪代码版本是

实际上,代码process表示要复杂得多并且z依赖于xy因此我正在寻找一种避免代码重复的方法。我可能会想办法重载函数,但我很好奇,所以我可以了解更多关于泛型的信息。

0 投票
2 回答
1518 浏览

java - 理解:public static整数最大值(列表请列出,比较器c)

我应该创建一个返回任何列表最大值的方法,我想这是一个通用方法。但是我不明白参数,谁能解释一下?我还制作了一个迭代器,我将在解决方案中使用它来遍历列表,但是当我创建迭代器的实例时,此方法给了我以下错误:“#nameofclass can not be referenced from a static context”,那么如何我在这里做一个实例吗?(由于某种原因它应该是静态的)我会很感激任何帮助!

0 投票
3 回答
447 浏览

java - 使用迭代器返回列表中最大对象位置的通用方法

我正在制作一个通用方法,它可以采用任何类型的列表并在该列表中找到最大值的位置,这是我制作的更大程序的一部分,我制作了一个迭代器,用于遍历列表。我快完成了,但我有两个问题: 1. 我无法在泛型方法中初始化迭代器。2. 无法从列表中获取第一个值。我不擅长解释,而是对代码中的问题区域进行了注释。任何帮助深表感谢!

通用方法:

迭代器:

0 投票
1 回答
154 浏览

c#-4.0 - 具有泛型返回的泛型方法

好吧,我有以下情况:

要创建加入方法,我依靠链接: http: //msdn.microsoft.com/en-us/library/bb534644 (v=vs.100).aspx

但是,当我尝试调用该方法时,无法识别TInner,使该方法变得无效,我返回以下错误:

无法将表达式类型“type”转换为返回类型“TResult”

注意:'Joins'类纯粹是一个测试,没有一个是确定的,var 'r'仅用于测试,仅用于方便返回。

预期用途示例:

更多细节:

如前所述,无法识别TInner,因此我无法调用正确的方法。

作为测试,我这样做了:

我知道p.ToString()不正确,但无法识别指示的类的属性(在 Permission 的情况下),然后放入 ToString() 只是为了完成编写方法。

编辑:

我需要在 foreach/for 中使用结果

例子:

0 投票
2 回答
375 浏览

java - 方法中的通配符参数

我定义了以下类:

它包含以下方法:

  • 公共布尔推送(T节点)
  • 公共T流行()
  • 公共迭代器 iterator()

我需要编写一个将元素从集合复制到 priorityQueue 的方法

我得到错误:

为什么我不能写方法:

我得到错误:

如何声明复制元素的方法?

0 投票
4 回答
2087 浏览

java - 为什么 Java 不能创建类型参数的实例

我知道 Java 不允许不创建类型参数的实例。许多文章只是简单地说“Type Erase”作为原因。但是类型参数初始化不会在类型擦除之前发生吗?类型擦除是唯一的原因吗?这是一个例子:

当我们使用 GenOjb.append(list) 调用泛型方法时,我认为编译器会先将方法中的 E 替换为 String,然后执行“Type Erase”,对吗?如果是这样,只要我们有办法确保 E 确实有一个默认构造函数,我们应该能够创建类型参数的实例。有人可以更详细地解释为什么 Java 不允许创建参数类型的实例吗?谢谢。

0 投票
2 回答
1310 浏览

c# - 不同属性的通用 foreach 循环

我正在尝试对 foreach 循环使用通用方法,该方法将传递不同的参数作为参数。

在下面的示例中,我想传递不同的参数(EmployeeDisplayOrder 或 EmployeeEnrollOrder)

我想要这样的东西

并从 SaveEmployeeDisplayOrder 和 SaveEmployeeEnrollOrder 调用此 UpdateEmployeeOrders 泛型方法。

UpdateSpecificEmployeeOrder 的方法签名

这可能吗?

0 投票
1 回答
82 浏览

c# - ObsoleteAttribute 和通用方法

我正在为我的 Serializer 类添加一个新的通用 Serialize 方法。旧的肯定已经过时了。

预期结果应该是:

但结果是:

那么为什么 Serialize(a) 调用通用版本呢?通用过时方法是否存在错误?

0 投票
2 回答
2374 浏览

c# - Linq-EF 查询的通用过滤方法

我有各种类型的 EF 实体,它们都有一个名为“Employee”的导航属性。生成报告时,用户可以选择根据不同的员工属性(成本中心、性别等)过滤报告。

目前我正在单独过滤每个查询,例如:

真正的过滤器代码要长得多,但这只是一个提示。无论如何,有没有办法创建一个通用方法来过滤员工的结果?我将提供给此过滤器方法的所有实体都将具有Employee导航属性。我将简单地提供一个IQueryable<entity>orObjectSet<entity>然后得到一个过滤的IQueryable<entity>or ObjectSet<entity>

怎么做?