Welche der folgenden 10 Zuweisungen haben eine korrekte (richtige) bzw. inkorrekte (falsche) Syntax?
Was stimmt an den inkorrekten Zuweisungen nicht?
Nr. | Zuweisung | Bewertung (richtig, falsch) | Erklärung (nur bei falscher Zuweisung) |
---|---|---|---|
int a; int b; int c; |
richtig | Die Variablen sind alle im gleichen Block deklariert und mit dem Wert 0 initialisiert. | |
1 |
a = 4; |
||
2 |
a = b; |
||
3 |
b := a; |
||
4 |
19 = b; |
||
5 |
a = a+c; |
||
6 |
a = 2*c |
||
7 |
a = a*a; |
||
8 |
a = 4; |
||
9 |
a,c = b; |
||
10 |
c = c; |
Niveau | 1 |
Schwierigkeitsgrad | mittel |
Zeit |
4 Minuten |
Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)
Antwort zu 1.: Zuweisungen mit dem Datentyp char
char und short sind Datenbehälter der gleichen Größe (16 Bit). Auf beiden sind die arithmetischen Operationen definiert. Man darf sie aber aus Sicherheitsgründen nicht ohne Cast (Typkonversion) aufeinander zuweisen.
public class CharTest {
public static void main(String[] args) {
short s1 = 70;
short s2 = 0;
char c = 'a';
System.out.println(c);
c++;
System.out.println(c);
//c = s1;
System.out.println(c);
c = (char)s1;
System.out.println(c);
c = (char)(c + s1);
System.out.println(c);
//s2= c;
System.out.println(s2);
s2= (short)c;
System.out.println(s2);
}
}
- Printer-friendly version
- Log in to post comments
- 5469 views