У меня есть такой код:
// This class cannot be changed
class VendorApi {
static void func1(char x) {}
static void func1(int x) {}
static void func1(float x) {}
static void func1(double x) {}
}
class Main {
static <T> void my_func(T arg) {
// much of code, which uses T
// ...
VendorApi.<T>func1(arg);
}
public static void main(String args[]) {
// call my_func for each type (char, int, float, double)
// ...
int i = 1;
my_func(i);
char c = 1;
my_func(c);
}
}
Что мне нужно сделать, так это вызвать каждую функцию VendorApi.func() для каждого типа аргументов из my_func(). Выложенный код не компилируется, он показывает идею. Как это сделать, кроме копирования в my_func() для каждого типа?