[Java] Datentyp ①-Basistyp
Java-Variablen
- Variablendeklaration: Benachrichtigt Java über den Namen der Variablen und sichert einen Bereich zum Speichern des Werts im Speicher
int data (= Anfangswert)
- Mehrere Variablen können zusammen deklariert werden
int data1, date2 (= Anfangswert)
- Versuchen Sie, den Anfangswert einzustellen
int data1= 108;
String message = “Hello World”;
- Kennung
- UCS2 wird in Java verwendet.
- Alle Unicode-Zeichen sind verfügbar
- Groß- und Kleinschreibung beachten
- Variablennamen sind grundsätzlich lesbar und idealerweise in Englisch lesbar
*
if (obj.isCompleted()){
- Konventionell sind Variablen ** camelClass **, Klassen sind ** Pascal **, Konstanten sind ** Großbuchstaben + Unterstrich **
Konstante
- ** Eine Variable, die nicht neu zugewiesen werden kann **
//Schlechtes Beispiel
int price = 1000;
double sum = price * 1.08;
- Durch die Verwendung von Konstanten ist die Bedeutung der Berechnungsformel leicht zu verstehen und kann leicht geändert werden.
- Ich möchte vermeiden, eine Zeichenfolge direkt in den Code einzugeben. → Als Konstante ausgeben
//Refactor Beispiel
final double TAX = 1.08;
int price = 1000;
double sum = price * TAX;
System.out.println(sum);
Java-Datentyp
- Statisch typisierte Sprache: Bestimmen Sie den Typ beim Deklarieren einer Variablen
- ** Grundtyp **: Der Wert selbst wird gespeichert
- ** Referenztyp **: Speichert Informationen, die den Speicherort des Werts angeben. Java basiert auf dem Referenztyp
- Es gibt Grundtypen und Referenztypen, die allen entsprechen
- boolean: Basistyp Boolean: Referenztyp
- int: Basistyp Integer: Referenztyp
Integer-Typ: Verwenden Sie basic int
- byte, char: Byte-Daten speichern
- short: repräsentiert eine kleine ganze Zahl
- long: Nur bei einem numerischen Bereich, der von int nicht unterstützt werden kann
Gleitkommatyp: Verwenden Sie Basic Double
-
Belegt 64 Bit Speicher
-
Beim Gleitkommatyp nimmt die Sprungbreite des Werts mit zunehmender absoluter Position zu.
-
IEEE 754 definiert das Format zur Werterhaltung
-
Normalisiert, in formale und exponentielle Formate zerlegt und verwaltet
123.75_{(10)}=1111011.11_{(2)}=1.11101111*2^{6}_{(2)}
-
$ 1.23 * 10 ^ 1 $ ~ $ 1.24 * 10 ^ 1 $ und $ 1.23 * 10 ^ {100} $ ~ $ 1.24 * 10 ^ {100} $ werden einen Unterschied machen! !!
Zeichentyp
- ** Char type **: 16bit --Unicode (UCS2) 1 Zeichen
- ** String-Typ **: Variable Länge, Vielfaches von 2
Boolescher Wert (boolescher, logischer Typ)
- Kann nicht in einen numerischen Typ konvertiert werden (true = 1, false = 0 usw.)
Typinferenz
var Variablenname = Anfangswert
var i = 48;
- Datentyp kann weggelassen werden
- Der Compiler leitet die Schulter automatisch aus dem zugewiesenen Wert ab und bestimmt = Typ leitet daraus ab
- Das obige Beispiel schließt auf int
- Der Anfangswert kann nicht weggelassen werden
Cannot use var on variable without initializer
- Kann nicht mehrere deklarieren
- Nur lokale Variablen (in Methoden deklarierte Variablen), die nicht in Felddeklarationen verwendet werden können
Was ist ein wörtliches
- ** Der Wert selbst, der im Datentyp gespeichert werden kann, die Darstellungsmethode **
- Abhängig vom Datentyp, Ganzzahlliterale, Gleitkommaliterale, Wahrheitsliterale usw.
Ganzzahliges Literal
- Aufkleber / 16-Base / 8-Base / 2-Base-Literal
Gleitkomma-Literal
- $ E $
- 1.14142e-5 → 0.0000114142
Geben Sie das Suffix ein
- Wenn Sie kein numerisches Literal verwenden, ist die Ganzzahl int und das Gleitkomma doppelt
- Wird verwendet, wenn Sie in Schwierigkeiten sind, wenn der Datentyp willkürlich festgelegt wird
- Fügen Sie dem numerischen Literal ein Schulter-Suffix hinzu
System.out.println (2147483648L); // im Fernbereich
Numerisches Trennzeichen (Trennzeichen)
- Zur Verbesserung der Lesbarkeit von Zeichen mit einer großen Anzahl von Ziffern
var pi = 3.141_592_653_59;
- Beachten Sie, dass Methoden, die numerische Zeichenfolgen empfangen (z. B. Integer.parseInt), das Trennzeichen nicht erkennen können.
Zeichen wörtlich
- Ausgedrückt als einfaches Anführungszeichen
- Unicode-Zeichen werden mit hexadezimalem Zeichencode im Format "\ u3042" multipliziert
String-Literal
- In doppelten Anführungszeichen ausgedrückt
- Verwenden Sie die Escape-Sequenz, wenn Sie doppelte Anführungszeichen einfügen möchten
System.out.println("You are \"GREATE\" !");
System.out.println("Welcome to wherever you are \nThis is your life, you made it this far");
var str = "Welcome, you got to believe " + "That right here, right now"; //Zur Verbesserung der Lesbarkeit getrennt
System.out.println(str);
Typkonvertierung
Statisch typisiert, aber Typkonvertierung erlaubt
- ** Erweiterungskonvertierung **
- int zu lang
- Beachten Sie, dass die Konvertierung von Ganzzahl in Gleitkomma zu Formverlust führen kann.
- ** Reduzierte Konvertierung (Besetzung, explizite Konvertierung) **
- Geben Sie explizit die Absicht der Konvertierung an
- Beachten Sie, dass sich das Vorzeichen aufgrund der Konvertierung zwischen int und short ändern kann.
int i = 10;
// byte b = i ; //NG
byte b = (byte)i ; //OK