Как я могу создать тип перечисления с dataType (String, Integer, boolean) в Android Studio, используя Java? - PullRequest
0 голосов
/ 23 апреля 2020

У меня есть объект со строковыми значениями. И в одном параметре этого объекта я храню dataType другого параметра. Мне было интересно, если есть способ создать тип перечисления, как это:

public enum KeyType {
    String,
    Integer,
    boolean
}

У меня есть приложение со всеми настройками различных приложений, установленных на смартфоне. И у меня есть сервис, который хранит все данные. Я отправил объекты в этот сервис из других приложений. И я пытаюсь избежать создания трех типов этого объекта, потому что единственным отличием будет этот тип свойства. Но я предполагаю, что это единственный способ сделать это.

1 Ответ

2 голосов
/ 23 апреля 2020

Вы можете добавить Class объект в ваше перечисление и добавить тип, подобный этому

public enum KeyType {
    String(String.class), Integer(Integer.class), Boolean(Boolean.class);

    KeyType(Class _class){mClass = _class;}

    private Class mClass;

    public Class getClassType(){return mClass;}
}

, и вы можете использовать его как

KeyType k = KeyType.String;
Class class = k.getClassType();
boolean type = k.getClassType() instanceof String; // true
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...