当前位置: 首页 > 面试题库 >

如何在运行时实例化给定数组类型的Java数组?

竺辉
2023-03-14
问题内容

在Java集合框架中,集合接口声明以下方法:

<T> T[] toArray(T[] a)

返回包含此集合中所有元素的数组;返回数组的运行时类型是指定数组的运行时类型。如果集合适合指定的数组,则将其返回。否则,将使用指定数组的运行时类型和此集合的大小分配一个新数组。

如果要实现此方法,将如何创建一个仅在运行时已知的 a 类型的数组?


问题答案:

使用静态方法

java.lang.reflect.Array.newInstance(Class<?> componentType, int length)

可在以下位置找到有关其使用的教程:http
:
//java.sun.com/docs/books/tutorial/reflect/special/arrayInstance.html



 类似资料:
  • 问题内容: 我有一个保存某种类型的变量,我需要获取一个保存相应数组类的变量。我能想到的最好的办法是: 有没有一种方法可以在不创建新实例的情况下进行操作? 问题答案: 从Java 12开始,在java.lang.Class上提供了方法。接着就,随即:

  • 问题内容: 假设通用类型声明(Java) 我如何在运行时实例化一个Type对象,该对象表示通过特定类型T(也仅在运行时才知道)进行参数化的Foo? 问题答案: 我想我明白你的问题。您想要序列化一个,并且在运行时具有class对象(但在编译时不是固定的)。因此,在Gson中建议的创建匿名子类的解决方案不起作用,因为这要求在编译时对参数化类型(例如)进行硬编码,并且如果使用,则该解决方案不起作用。 但

  • 问题内容: 运行前三行会发出; 如何得到 ???要长吗?我可以解析该字符串,然后执行Class.forname(),但这很糟糕。简单的方法是什么? 问题答案: 写就好了 从JavaDoc: 返回表示数组的组件类型的信息。如果此类不表示数组类,则此方法返回。

  • 我正在为Akka应用程序搭建测试,我希望在其中向测试类注入一个actor: 我不愿介绍现阶段键入的Akka;为了简单起见,最好不要更改目标参与者,以便在启动后将其值参数作为消息接收,否则这是一个临时的解决方案。

  • 本文向大家介绍更改给定numpy数组的数据类型,包括了更改给定numpy数组的数据类型的使用技巧和注意事项,需要的朋友参考一下 除了python的本机数据类型外,Numpy数组还支持多种数据类型。创建数组后,我们仍然可以根据需要修改数组中元素的数据类型。用于此目的的两种方法是array.dtype和array.astype array.dtype 此方法为我们提供了数组中元素的现有数据类型。在下面

  • 我正在努力弄清楚是否可以在TypeScript中声明一个静态类型的函数数组。 例如,我可以这样做: 但是,如果我想让foo成为一个函数数组,它接受一个字符串而不返回任何内容,我该怎么做呢? 不起作用,因为TypeScript认为它是一个接受字符串并返回空数组的函数,而且它似乎不喜欢我试图将函数包装在括号中。 有什么想法吗? 答:感谢下面的穆罕默德,这里有一个在TypeScript游戏场中工作的示例