QUIZ N°4 - Structures conditionnelles
QUIZ N°4 - Structures conditionnelles en java
Prêt à commencer ?
Lisez chaque question attentivement et sélectionnez la ou les bonnes réponses.
Quel est le résultat du programme suivant?
package planning;
public class ThePlan {
public static void main(String[] input) {
int plan = 1;
plan = plan++ + --plan;
if(plan==1) {
System.out.print("Plan A");
}
else {
if(plan==2)
System.out.print("Plan B");
}
else System.out.print("Plan C");
}
}
Powered by Froala Editor
(Option 4).Ce code ne compile pas car il contient deux instructions else faisant partie d'une seule instruction if-then. Notez que la seconde instruction if n'est pas connectée à la dernière instruction else. Pour cette raison, l'option 4, aucune de ces réponses, est la bonne réponse.
Powered by Froala Editor
Quelle instruction quitte immédiatement une instruction switch, en ignorant toutes les branches de casse ou dafault restantes?
Powered by Froala Editor
(Option 2). L'instruction break quitte une instruction switch en ignorant toutes les branches restantes et en donnant à l'option 2 la réponse correcte. Dans l'option 1, exit n'est pas une instruction en Java. Dans Option 3, goto est un mot réservé mais non utilisé en Java. Enfin, dans l'option 4, continue est une instruction mais utilisée uniquement pour les boucles.
Powered by Froala Editor
Étant donné l'extrait de code suivant, quelle est la valeur de RDV après son exécution?
int heure = 11;
int jour = 4;
String RDV = heure > 10 ? jour ? "Samedi" : "Vendredi" : "Dimanche";
Powered by Froala Editor
(Option 4). Bien que les parenthèses soient recommandées pour les opérations ternaires, en particulier les opérations incorporées, elles ne sont pas obligatoires. L'option 3 est donc incorrecte. Le code ne se compile pas car jour est une expression int, et non une expression booléenne, dans la deuxième opération ternaire, ce qui permet à l'option 4 d'être la bonne réponse.
N'oubliez pas qu'en Java, les valeurs numériques ne sont pas acceptées à la place des expressions booléennes dans les instructions if-then ou les opérations ternaires.
Powered by Froala Editor
Laquelle des déclarations suivantes concernant une branche defaultdans une instruction switch est correcte?
Powered by Froala Editor
(Option 3). Une instruction default à l’intérieur d’une instruction switch est facultative et peut être placée dans n’importe quel ordre dans les instructions case du switch, ce qui rend les options 1 et 2 incorrectes. L'option 4 est une instruction incorrecte, car une instruction switch peut être composée d'une seule instruction default et d'aucune instruction case. L'option 3 est correcte car une instruction default ne prend pas de valeur, contrairement à une instruction case.
Powered by Froala Editor
Quel est le résultat du programme suivant?
package registration;
public class NameCheck {
public static void main(String... data) {
String john = "john";
String jon = new String(john);
System.out.print((john == jon) + " " + (john.equals(jon)));
}
}
Powered by Froala Editor
(Option 3).La première affectation crée un nouvel objet String "john". La deuxième ligne utilise explicitement le mot-clé new, ce qui signifie qu'un nouvel objet String est créé. Comme ces objets ne sont pas identiques, le test == sur eux est évalué à false. Le test equals () sur eux renvoie true car les valeurs auxquelles ils font référence sont équivalentes. Par conséquent, la bonne réponse est 3.
Powered by Froala Editor
Lequel des types de variable suivants n'est pas autorisé dans une instruction switch ?
Powered by Froala Editor
(Option 2).Une instruction switch prend en charge les types primitifs octet, short, char et int, ainsi que les classes String, Character, Byte, Short et Integer. Il prend également en charge les types énumérés. Les types à virgule flottante tels que float et double ne sont pas pris en charge. Par conséquent, l'option 2 est la bonne réponse.
Powered by Froala Editor
Remplir les espaces vides:
L'opérateur___________ augmente la valeur d'une variable de 1 et renvoie la nouvelle valeur, tandis que l'opérateur__________ diminue la valeur d'une variable de 1 et renvoie la valeur d'origine.
Powered by Froala Editor
(Option 2). Les opérateurs de pré-incrémentation modifient la variable et évaluent la nouvelle valeur, tandis que les opérateurs post-décrémentation modifient la variable mais renvoient la valeur d'origine. Par conséquent, l'option 2 est la bonne réponse.
Powered by Froala Editor
Quelle est la valeur de nombre après l'exécution de l'extrait de code suivant?
long unnombre = 5 >= 5 ? 1+2 : 1*1;
if(++unnombre < 4)
unnombre += 1;
Powered by Froala Editor
(Option 2). L'attribution initiale de unnombre suit la première branche de l'expression ternaire. Étant donné que 5> = 5 a la valeur true, une valeur de 3 est attribuée à nombre. Sur la ligne suivante, l'opérateur de pré-incrémentation incrémente la valeur de unnombre à 4 et renvoie la valeur 4 à l'expression. Puisque 4 <4 est évalué à false, le bloc if-then est ignoré. Cela laisse la valeur de unnombre à 4, faisant de l'option 2 la bonne réponse.
Powered by Froala Editor
Quel est le résultat du programme suivant?
package voting;
public class Election {
public void calculateResult(Integer candidateA, Integer candidateB) {
boolean process = candidateA == null || candidateA.intValue() < 10;
boolean value = candidateA && candidateB;
System.out.print(process || value);
}
public static void main(String[] unused) {
new Election().calculateResult(null, 203);
}
}
Powered by Froala Editor
(Option 3). Sur la ligne 4, candidatA et candidatB sont des nombres, mais l'opération && ne peut être appliquée qu'aux expressions booléennes. Par conséquent, le code ne se compile pas à cause de la ligne 6, ce qui donne 3 la réponse correcte.
Powered by Froala Editor
Quelle déclaration sur les déclarations de case d'une instruction switch n'est pas vraie ?
Powered by Froala Editor
(Option 2). Une valeur de case doit être une expression constante, telle qu'une variable littérale ou finale, afin que les options 1 et 3 soient des déclarations vraies concernant les valeurs de case. Une instruction case peut être résiliée par une instruction break, mais elle n’est pas obligatoire, ce qui fait de l’Option 2 la déclaration fausse et la réponse correcte. L'option 4 est également une affirmation vraie sur les valeurs de case.
Powered by Froala Editor
Voici le résumé de votre performance.
Discussion (0)
Soyez le premier à laisser un commentaire !
Laisser un commentaire
Votre commentaire sera visible après modération.