Bra*_*don 1 java generics explicit implicit
如何在Java中调用数组函数?
目前它看起来像:
public static void WriteLine(Object Array[]) {
for (int I = 0; I < Array.length; ++I) {
Out.println(Array[I]);
}
}
public static void WriteLine(Object Text) {
Out.println(Text);
}
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
public static <T> void WriteLine(T Array[]) {
for (int I = 0; I < Array.length; ++I) {
Out.println(Array[I]);
}
}
Run Code Online (Sandbox Code Playgroud)
在我的主要,我做:
int[] I = new int[]{1, 2, 3, 4, 5};
WriteLine(I);
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
WriteLine<int[]>(I);
Run Code Online (Sandbox Code Playgroud)
不起作用..
它打印:[I @ 2f56f920
又名int数组的地址.如何显式调用特定的数组函数或如何让编译器知道哪一个自动调用(隐式)?
我还不习惯Java/Generics/Object ..刚刚从C++移动并用于模板:(
一个int
不是Object
这样一个int[]
不是一个Object[]
:
Integer[] I = new Integer[]{1, 2, 3, 4, 5};
WriteLine(I);
Run Code Online (Sandbox Code Playgroud)
或者你应该WriteLine
为所有原始类型重载:
public static void WriteLine(int Array[]) {
...
public static void WriteLine(long Array[]) {
...
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
194 次 |
最近记录: |