[JAVA] Beispiel für die Verwendung von ArAutoValueConverter (Feldtypkonvertierung)

Inhaltsverzeichnis ⇒ Java Algorithm Library-Artery-Sample

package jp.avaj.lib.algo;

import jp.avaj.lib.test.L;

/**
Beispiel für die Verwendung von ArAutoValueConverter(Feldtypkonvertierung)

・ Gegenseitige Konvertierung der folgenden Typen.
・ String
・ Boolescher Wert
・ Ganzzahl
・ Lang
・ Große Dezimalstelle
・ ArYoubi ⇒ Aufzählung, aber Sonderbehandlung.
・ Aufzählung
· Datum
· Kalender
・ ArDate

・ Natürlich ist eine Konvertierung möglicherweise nicht möglich.Gibt null zurück, wenn keine Konvertierung möglich ist.Machen Sie keine Ausnahme.

 */
public class Q06_00 {

  public static void main(String[] args) {
    //Alle Kombinationen anzeigen ist lang, daher werden nur einige angezeigt.

    Object result;

    L.p("\n==== String⇒Boolean");
    //Diese Konvertierung ist ArAutoValueConverter.stringTrueValues,ArAutoValueConverter.Kann durch Umschreiben von stringFalseValues geändert werden.
    {
      result = ArAutoValueConverter.convert("TRUE",Boolean.class);
      L.p(result.getClass().getSimpleName());
      L.p(result+"");
    }
    L.p("\n==== String⇒ArYoubi");
    {
      result = ArAutoValueConverter.convert("Sun",ArYoubi.class);
      L.p(result.getClass().getSimpleName());
      L.p(result.toString());
    }
    L.p("\n==== String⇒Enum:Statische Aufzählung von String in der Aufzählung(String)Muss sein");
    {
      result = ArAutoValueConverter.convert("Choki",Jyanken.class);
      L.p(result.getClass().getSimpleName());
      L.p(result.toString());
    }
    L.p("\n==== Boolean⇒String");
    //Diese Konvertierung ist ArAutoValueConverter.stringTrueValues,ArAutoValueConverter.Kann durch Umschreiben von stringFalseValues geändert werden.
    {
      result = ArAutoValueConverter.convert(new Boolean(false),String.class);
      L.p(result.getClass().getSimpleName());
      L.p(result.toString());
    }
    L.p("\n==== Boolean⇒Integer");
    //Diese Konvertierung ist ArAutoValueConverter.integerTrueValues,AutoValueConverter.Kann durch Umschreiben von integerFalseValues geändert werden.
    {
      result = ArAutoValueConverter.convert(new Boolean(false),Integer.class);
      L.p(result.getClass().getSimpleName());
      L.p(result.toString());
    }
    L.p("\n==== Integer⇒ArYoubi");
    //Diese Konvertierung ist ArYoubi.Kann durch Umschreiben von intConversion geändert werden
    {
      result = ArAutoValueConverter.convert(new Integer(1),ArYoubi.class);
      L.p(result.getClass().getSimpleName());
      L.p(result.toString());
    }
    L.p("\n==== Integer⇒Enum:Statische Aufzählung von Int bis Aufzählung(Integer)Muss sein");
    {
      result = ArAutoValueConverter.convert(new Integer(2),Jyanken.class);
      L.p(result.getClass().getSimpleName());
      L.p(result.toString());
    }
    L.p("\n==== ArYoubi⇒String");
    //Diese Konvertierung ist Youbi.defaultLang,Youbi.defaultLength,Youbi.Kann durch Umschreiben des defaultBracket geändert werden.
    {
      result = ArAutoValueConverter.convert(ArYoubi.TUE,String.class);
      L.p(result.getClass().getSimpleName());
      L.p(result.toString());
    }
    L.p("\n==== Enum⇒Integer:Ganzzahl zu Int zur Aufzählung()Muss sein);");
    {
      result = ArAutoValueConverter.convert(Jyanken.Paa,Integer.class);
      L.p(result.getClass().getSimpleName());
      L.p(result.toString());
    }
  }
  static enum Jyanken {
    Guu("Schmiere",1),Choki("Choki",2),Paa("Par",3);
    private Jyanken(String name,int val) {
      this.name = name;
      this.val = val;
    }
    public String toString() {
      return this.name();
    }
    public int toInt() {
      return this.val;
    }
    public static Jyanken fromString(String str) {
      if ("Schmiere".equals(str)) { return Guu; }
      if ("Choki".equals(str)) { return Choki; }
      if ("Par".equals(str)) { return Paa; }
      return null;
    }
    public static Jyanken fromInt(Integer v) {
      if (v == 1) { return Guu; }
      if (v == 2) { return Choki; }
      if (v == 3) { return Paa; }
      return null;
    }
    private String name;
    private int val;
  }
}

Das Ergebnis ist wie folgt.

result.ext



==== String⇒Boolean
Boolean
true

==== String⇒ArYoubi
ArYoubi
(Tag)

==== String⇒Enum:Statische Aufzählung von String in der Aufzählung(String)Muss sein
Jyanken
Choki

==== Boolean⇒String
String
FALSE

==== Boolean⇒Integer
Integer
0

==== Integer⇒ArYoubi
ArYoubi
(Mond)

==== Integer⇒Enum:Statische Aufzählung von Int bis Aufzählung(Integer)Muss sein
Jyanken
Choki

==== ArYoubi⇒String
String
(Feuer)

==== Enum⇒Integer:Ganzzahl zu Int zur Aufzählung()Muss sein);
Integer
3

Recommended Posts

Beispiel für die Verwendung von ArAutoValueConverter (Feldtypkonvertierung)
Beispiel für die Verwendung von vue.config.js
[Kotlin] Ein Beispiel für die Verarbeitung mit Enum
[Grundkenntnisse in Java] Informationen zur Typkonvertierung
Java-Typkonvertierung
Ein Beispiel, bei dem die Verwendung von Addition schneller ist als die Verwendung von StringBuilder (Java)
Uri → String, String → Uri-Typkonvertierung
Feld für den Java-Klassentyp
Zusammenfassung der Verwendung von FragmentArgs
Zusammenfassung der Verwendung von DBFlow
[Java] Konvertierung des Datumstyps