Acredito até que exista algum método pronto para responder a essa sua pergunta, porém desconheço.
Mas é bem fácil criar seu próprio mecanismo para descobrir se uma variável é do tipo double ou float. Basta criar alguns métodos overloaded:
public boolean isPontoFlutuante(byte num) {return false;}
public boolean isPontoFlutuante(short num) {return false;}
public boolean isPontoFlutuante(int num) {return false;}
public boolean isPontoFlutuante(long num) {return false;}
public boolean isPontoFlutuante(float num) {return true;}
public boolean isPontoFlutuante(double num) {return true;}
Você pode até criar uma classe e colocar esses métodos como static, para acessá-los de qualquer lugar.
Aliás, na verdade nem precisa ter todos esses métodos. Basta ter um que aceite double e outro que aceite long. Todos os outros tipos podem ser tratados por esses dois métodos através de cast implícito.