Primitive datentype

ich habe 2 primitive datentypen
int ivalue = 3
long lvalue = 301
was ist der typ und werte von lvalue+ivalue ?
ist der Antwort long und 301 weil long größere zahlen behandelt als int ?
kann man sie überhaupt addieren ?
danke

Hallo Serene26,

bei arithmetischen Termen erfolgt, wenn möglich, eine automatische Typkonvertierung durch den Compiler. Diese Anweisung bringt das kanonische Ergebnis: System.out.println(" Ergenis:"+ (ivalue + lvalue));. Der Term (ivalue + lvalue) ist vom Typ long.

Im Beispiel ist das Literal ‚301‘ ein int-Wert (sic) ‚301L‘ wäre das passende long-Literal. Eine Typkonvertierung kann z.B. auch so erfolgen:

int ivalue =new Long(301L).intValue();

ich hoffe das hat geholfen.

Hallo,

die zwei Werte können in dieser Form addiert werden.
Wenn das Ergebnis einer neuen Variablen zugewiesen werden soll, so muß diese auch vom Typ „long“ sein, ansonsten wirst Du einen Compiler-Fehler bekommen.

Hallo,
bin der falsche Experte, programmiere nicht in Java.

MfG
Bernd

Ich weiß nicht mit was für einem Compiler du arbeitest. Aber in diesem Fall beträgt der neue Wert 304. Wenn du weitere Fragen hast, dann kanns du die ja stellen. Wenn ich mehr über die Aufgabestellung weiß, demensprechend kann ich auch weiterhelfen. Den neuen Wert muss du zum Beispiel einer Variable ja zuweisen. Dieser neuen Variable muss auch ein neuer Typ bei deren Deklaration zugewiesen werden. Dieser kann sowohl ein „long“ als auch ein „int“ sein, der neue Wert (304) wird von beiden Typen akzeptiert.

ja sehr vielen dank
Ivalue+Lvalue ist von typ long und der wert ist 3 +301 + 304 ??
und wenn zum beispiel
long lvalue 301
lvalue/2 ist von typ double ? weil 301/2 = 150,5 ?
danke

Hallo,

einfach mal einen Blick in die Sprachbeschreibung werfen (Literale!) und dann auch mal ausprobieren.

viel Spass

es sind hausaufgabe fuer die uni und ich komme nicht weiter es sthe auch gar nichts in der vorlesung
ich habe zwei primitiven variablen
int ivalue = 3 und long lvalue = 301 und soll der typ und der wert von der summe finden
int ivalue + long lvalue = 304 von typ integer und wert 304 ?
und long lvalue/2 = 150.5 ist von typ double ? und wert 15,5 ?
kannst du auch mit java programmieren ? die betreung in der uni ist sehr sehr gering danke

ich kenne mich mit java nicht aus. Am besten fragst du im Forum weiter. Ich kann an dieser Stelle dir nicht weiterhelfen. Aus Zeitmangel kann ich auch nicht in diese Problemstellung tiefer einsteigen.