[Java] Ich habe es überprüft, weil es beim Konvertieren des Typs fehlerhaft war. <Cast-Operator>

Einführung

Meine Lernnotizen.

Erstellen eines sprudelnden Entferners, der versucht, die Objektorientierung zu verstehen. Es gibt eine solche Beschreibung darin

int pos;
pos = (int) (Math.random() * number);

(int)(Math.random() * number);Was ist es? Es wurde.



#### **`pos = Math.random() *Ich dachte, diese Nummer sei unmöglich und versuchte es, aber es war ein Fehler`**
```random() *Ich dachte, diese Nummer sei unmöglich und versuchte es, aber es war ein Fehler


## Ich habe es nachgeschlagen
 Aus der Schlussfolgerung ist es wahrscheinlich die Basis des "Cast-Operators", aber wurde es übersprungen? ..

 Es verhindert Fehler, die auftreten, wenn Sie versuchen, etwas mit einem anderen Datentyp zuzuweisen!

 Insbesondere schrieb ich:

 > Der Datentyp muss mit dem Cast-Operator konvertiert werden, z. B. von einem großen Typ in einen kleinen Typ.

 Die große Größe bezieht sich hier auf die "Anzahl der Bits".

 |Datentyp|Bedeutung|Größe|
 |:-----------------|------------------ |------------------  |
 | byte            |ganze Zahl|       8bit       |
 |     short      |ganze Zahl|       16bit     |
 |          int    |ganze Zahl|       32bit      |
 |             long   |ganze Zahl|      64bit       |
 |          float    |Gleitkomma-Dezimalpunkt|  32bit      |
 |         double  |Gleitkomma-Dezimalpunkt|      64bit       |
 |         char  |1 Zeichen|       16bit       |
 |         boolean  |Boolescher Wert|   1bit      |


 ** ~ Nachtrag ~ **

 ** → Implizite Typkonvertierung **

 |  → | →      | →     |→ |→ | →|
 |:-----------------|------------------ |------------------  |------|------|----|
 |      byte  |    short/char    |      int      |long|float|double|
 |  ← |  ←     | ←     | ←|← |← |

 ** ← Umwandlung des Cast-Typs **





 Beim Ausdrücken mit double (64bit) -> int (32bit)
 (Groß) → (Klein), also muss ich es explizit schreiben.

```java
int pos;
pos = (int) (Math.random() * number);

Recommended Posts

[Java] Ich habe es überprüft, weil es beim Konvertieren des Typs fehlerhaft war. <Cast-Operator>
Ich habe nachgesehen, weil die Antwort beim Debuggen mit Tomcat 8 seltsam war
Als ich eine Methode für Premium Friday erstellen wollte, war sie bereits in der Java 8-Standard-API enthalten
Warum Java die Zielsprache war, hasse ich
Ich konnte es nach dem Upgrade der Java-Version nicht ausführen
Aufgenommen, weil es von Oracle Java Silver akzeptiert wurde
Ich war verwirrt, weil es eine Aufteilung im Array gab
Die Geschichte, nach der ich beim Einrichten von STS süchtig war
Als ich mir Sorgen über statische Methoden in der Java-Oberfläche machte, kam ich zur Reihenfolge der Namensinterpretation