2015-05-07 7 views
0

Возможно ли получить тип данных входной переменной (может быть любой примитивный тип, int, bool, float, double), возвращаемый как строка, используя только одну строку кода ? Я знаю, что это легко можно сделать для типа String, используя getName и getShortName, но я не уверен, как использовать эти методы для возврата типа примитивного типа. Я также хочу, чтобы мой код был очень коротким, чтобы сделать это, предпочтительно, используя только одну строку.Java - получение типа переменной для примитивных типов данных

Я искал вокруг и не могу найти ответы на этот вопрос так, как мне нужно.

+0

Что вы подразумеваете под «переменной ввода»? Это действительно помогло бы, если бы вы могли опубликовать полный пример того, чего вы пытаетесь достичь, с соответствующим вызовом 'magicMethod' или тем, чтобы представить бит, который вы не знаете, как это сделать. –

+0

Я не уверен, что вы можете, но разве вы не всегда это знаете во время компиляции? Поскольку примитив не является объектом, нет никакой двусмысленности, он должен быть любым объявленным типом? – hugh

+0

Не знаете, почему вы хотите это сделать, но вы не можете сделать это для примитивных типов. Если возможно, вы можете использовать соответствующие типы оберток. –

ответ

1

Что относительно Class.getName()?

Возвращает имя объекта (класса, интерфейса, класса массива, примитивного типа, или пустота), представленный данным объектом класса, как String. Если этот объект класса представляет ссылочный тип, который не является типом массива, тогда возвращается двоичное имя класса, как , указанное в Спецификации языка Java, второе издание.

Если этот класс объектов представляет собой примитивный тип или пустота, то возвращается имя является строка равна языку ключевого слова Java, соответствующего примитивного типа или недействительным.

В Java Doc вы можете следить за this link, которые очень хорошо объясняют, как использовать этот метод.