java - 原始类型类 (java)
问题描述
我想获得一个与对象数组的类相对应的类数组。我写了这段代码:
Object[] parameters = new Object[]{...};
Class[] classes = new Class[parameters.length];
for(int i = 0; i < parameters.length; i++){
classes[i] = parameters[i].getClass();
}
但是,我需要原始类型,例如 int 或 float writen,因为float.class或int.class 可以,但我得到的是java.lang.Float或java.lang.Integrer。有什么我可以做的吗?
解决方案
AnObject[]
永远不能直接包含原始类型。它只能包含包装类型Integer
// Float
...
这就是为什么classes[i]
在您的代码中永远不会包含int.class
.
请注意, anObject[]
可以包含 an int[]
which 反过来可以包含int
值(并且仅包含int
值),但这似乎不是您要查找的内容。
推荐阅读
- android - 在房间数据库中保存瞬态字段
- django - ValueError:视图 videos.views.add_comment_post 未返回 HttpResponse 对象。它在 Django 中返回 None
- html - 单选按钮和相关标签未对齐
- compression - 哪些解压算法可以安全地用于攻击者提供的缓冲区?
- flutter - Flutter Web:如何发送不记名令牌?
- terraform - Terraform Cloud 工作空间结构
- ios - 如何在 iOS 上访问 GitHub 桌面 Web 视图
- react-native - 不变违规:运行 react-native 应用程序时未注册“main”
- raspberry-pi - 覆盆子有时会失去坐骑
- javascript - 错误:未捕获(承诺中)DOMException:无法在“CanvasRenderingContext2D”上执行“getImageData”:源高度为 0