Q
传递类的功能
0
A
回答
3
一个更巧妙的方式将是使用封闭:
f = {Class t, x -> x.asType(t)}
assert f(int, "2") == 2
assert f(float, "2") == 2.0f
assert f(double, "2") == 2.0d
assert f(Integer, "2") == 2
assert f(Long, "2") == 2L
assert f(BigDecimal, "2") == 2G
3
假设你定义˚F作为一个类的方法,你可以这样做:
class F
{
static <T> T f(Class<T> outputClass, input)
{
input.asType(outputClass)
}
}
然后使用它通过调用
F.f(Integer, "42")
如果你不关心泛型(尽管他们也应该帮助你的IDE拿起返回值是T型的),这也是有效的:
class F
{
static f(Class outputClass, input)
{
input.asType(outputClass)
}
}
assert F.f(Integer, "42").class == Integer
1
只是为了完成你的代码示例:
def f(Class t, x) { x.asType(t) }
int x = f(int, "42")
相关问题
- 1. 传递类属性的功能
- 2. 传递XAML窗口类型的功能
- 3. 传递自(功能)
- 4. 将mysqli传递给功能使用类
- 5. 传递载体的功能
- 6. 传递价值的功能
- 7. jQuery的不传递功能
- 8. 传递$(本)的功能
- 9. 传递用Cython功能用Cython功能
- 10. 传递矩阵功能,C
- 11. 传递到座功能
- 12. 传递给JS功能
- 13. 传递懒功能参数
- 14. 功能 - 传递参数。
- 15. 传递价值JS功能
- 16. 传递变量名功能
- 17. 传递片任意功能
- 18. 传递数组到功能
- 19. 传递事件到功能?
- 20. 传递/返回类型参数类的功能
- 21. 传递一个功能到另一个功能相同的类内
- 22. jQuery的传递$(本)的功能
- 23. 传递的unique_ptr <int[]>的功能
- 24. 传递的std ::矢量为任何类型的功能
- 25. 传递派生类的列表的功能在C++
- 26. 传递多头排列的JSNI功能
- 27. 传递当前项目的功能
- 28. jQuery的传递$这功能参数
- 29. 传递动态数组的功能
- 30. 传递字符串VAR的功能
是任何回答适合接受的? – dmahapatro