Czy ktoś może powiedzieć, co to jest promocja numeryczna?Co to jest promocja numeryczna?
Odpowiedz
Promocja numeryczna to konwersja mniejszego typu liczbowego na większy typ liczbowy, aby umożliwić wykonywanie operacji na liczbach całkowitych i zmiennoprzecinkowych. W promocji numerycznej bajt, znak i wartości krótkie są konwertowane na wartości int. Wartości int są również konwertowane na długie wartości, jeśli to konieczne. Długie i zmienne wartości są w razie potrzeby konwertowane na podwójne wartości.
If you look here, pojawi się następujący cytat:
promocji numerycznej (§5.6) przynosi argumentów operatora numerycznej do wspólnego typu tak, że operacja może być wykonana .
Są to referencing this section, gdzie podają różnorodne przykłady. Klasycznym przykładem jest int razy float. Liczba całkowita jest promowana do wartości zmiennoprzecinkowej, tak że wynik zwielokrotniony jest zatem zmiennoprzecinkowy.
Promocja numeryczna jest konwersją argumentu operacji (co najmniej jednej z zaangażowanych liczb) do wspólnego typu.
Na przykład:
int i = 10;
double d1 = 2.5;
double d2 = d1 * i;
W tym przypadku, jest promowany do podwojenia więc obliczenia mogą być wykonywane. W pewnym sensie możesz myśleć, że jest to analogiczne do boksowania, ale boksowanie polega na przechodzeniu od struktury do obiektu (od stosu do sterty). Ale użycie tej analogii daje wyobrażenie o tym, że wartość integralna jest przekształcana w zmiennoprzecinkowy, aby wykonać obliczenia.
Zasady promocji numeryczna
Jeśli dwie wartości mają różne typy danych, Java automatycznie promować jedną z wartości większej z dwóch typów danych.
Jeśli jedna z wartości jest całkowita, a druga zmiennoprzecinkowa, Java automatycznie będzie promowała wartość całkowitą do typu danych zmiennoprzecinkowych.
Mniejsze typy danych, a mianowicie bajt, short i char, są najpierw promowane do int za każdym razem, gdy są używane z binarnym operatorem arytmetycznym Java, nawet jeśli żaden z operandów nie jest int.
końcu promowanie wystąpiła i argumenty mają ten sam typ danych, uzyskana wartość będzie miała ten sam typ danych w jego promowanych operandów
- 1. Promocja w Javie?
- 2. Co to jest Serializable? Co to znaczy?
- 3. Co to jest "usuń to"?
- 4. Co to jest Pagel?
- 5. Co to jest _GLOBAL_OFFSET_TABLE?
- 6. Co to jest "android.R.layout.simple_list_item_1"?
- 7. Co to jest DetailsView.EnableModelValidation?
- 8. Co to jest NSPathStore2?
- 9. Co to jest czasownik = "*"?
- 10. Co to jest Postgresql_psycopg2?
- 11. Co to jest ?
- 12. co to jest .netrwhist?
- 13. co to jest Microsoft.Practices.EnterpriseLibrary.Data
- 14. Co to jest CGVector?
- 15. Co to jest $ {project.licensePath}?
- 16. co to jest alloc.h?
- 17. Co to jest PurpleEventCallback?
- 18. Co to jest global ::?
- 19. Co to jest? rodzaj?
- 20. Co to jest __meteor_bootstrap__?
- 21. Co to jest NuGetPackageImportStamp?
- 22. Co to jest LazyList?
- 23. Co to jest IllegalStateException?
- 24. Co to jest "loadall.so"?
- 25. Co to jest ws: //?
- 26. Co to jest DNVM?
- 27. Co to jest kthreadd_task
- 28. Co to jest AppDomain?
- 29. Co to jest klabject?
- 30. Co to jest UIViewController
[rozdział 5. Konwersje Gorące] (http://docs.oracle.com/javase/specs/jls/se7/html/jls-5.html) Naprawdę mógłbyś go ... – sleske