1. Opérateur
Les opérateurs comprennent les éléments suivants:
Opérateur d'opérateur arithmétique Opérateur de comparaison opérateur logique Opérateur de bits Opérateur trigonométrique
Les opérateurs de bits les moins couramment utilisés sont également ceux les plus proches de l'ordinateur sous-jacent.
1. Opérateurs arithmétiques
(1) Plusieurs usages de +: ajout, nombres positifs, caractères de concaténation à cordes
(2) Un problème doit être prêté attention lors de la division des entiers: divisez-les ensemble et vous ne pouvez obtenir que des entiers. Pour obtenir une décimale, vous pouvez convertir les données elle-même * 1.0, c'est-à-dire convertir d'abord les données elle-même en un type de point flottant.
2. Opérateur d'affectation
Symbole = + = - = * = / =% =
Remarque: = est l'opérateur d'affectation de base, et les autres sont des opérateurs d'affectation prolongés
Questions d'entrevue:
(1) court-circuit s = 1, s = s + 1;
(2) court-circuit s = 1, s + = 1;
Y a-t-il un problème avec les deux codes ci-dessus? Si oui, où y a-t-il un problème?
Réponse: le code (1) est incorrect et perdra la précision. Lors de la définition de l'octet et de court, ils reçoivent en fait une valeur de type int. Cela est fait par moi-même. S'il n'est plus dans leur gamme, une erreur sera signalée. Les effets sont les suivants:
Le code (2) n'a pas d'erreurs car: l'opérateur d'attribution étendu implique en fait un casting.
C'est-à-dire i + = 1; n'est pas équivalent à i = i + 1; mais équivaut à i = (type de données de i) (s + 1);
3. Opérateurs relationnels
Remarque 1: Les résultats de l'opérateur de comparaison sont booléens, c'est-à-dire qu'ils sont vrais ou faux.
Remarque 2: L'opérateur de comparaison "==" ne peut pas être écrit à tort comme "=". Par exemple:
4. Opérateurs logiques
(1) Les opérateurs logiques sont utilisés pour connecter les expressions booléennes. Ils ne peuvent pas être écrits comme 3 <x <6 en java, mais doivent être écrits comme x> 3 & x <6.
(2) La différence entre "&" et "&&"? De même, c'est la différence entre "|" et "||"?
R: Le résultat final est le même. Par exemple: A et B doivent être vrais en même temps, et les résultats de A&B et A&B sont vrais. B: && a un effet court-circuit, le côté gauche est faux et le côté droit n'est pas exécuté. || Il a un effet de court-circuit, le côté gauche est vrai et le côté droit n'est pas exécuté.
Remarque: Opérateurs logiques couramment utilisés en développement: &&, || ,!
(3) La différence entre XOR (^) et ou (|) est: lorsque la gauche et la droite sont vraies, le résultat de XOR est faux.
5. Opérateur de bits:
Bien qu'il ne soit pas grand-chose utilisé dans le développement, il sera vu dans de nombreux codes source car l'informatique sous-jacente des ordinateurs est des opérations bit.
Question d'entrevue 1: Mettez en œuvre l'échange de deux variables entières
Le code est le suivant:
/ * Question d'entrevue: veuillez mettre en œuvre l'échange de deux variables entières par vous-même * / class operatorTest {public static void main (String [] args) {int a = 10; int b = 20; System.out.println ("A:" + A + ", B:" + B); // Méthode 1: Utilisez des variables tierces (utilisées dans le développement) int c = a; a = b; b = c; System.out.println ("A:" + A + ", B:" + B); System.out.println ("----------------"); // Méthode 2: Utilisez le bit xor pour implémenter (interview) // gauche: a, b, a // droit: a ^ ba = a ^ b; b = a ^ b; // a ^ b ^ b = aa = a ^ b; // a ^ b ^ a = b system.out.println ("a:" + a + ", b:" + b); // Méthode 3: Utilisez des variables pour ajouter a = a + b; // a = 30 b = a - b; // b = 10 a = a - b; // a = 20 system.out.println ("a:" + a + ", b:" + b); * // Méthode 4: faites-le en une phrase b = (a + b) - (a = b); // b = 30-20 = 10, a = 20 system.out.println ("a:" + a + ", b:" + b); }}Question de l'entretien 2: Veuillez écrire le résultat du calcul 2 fois 8 de la manière la plus efficace.
Réponse: 2 * 8 est équivalent à 2 << 3
Revue des connaissances:
<<: Jetez le bit le plus élevé sur la gauche et le côté droit. >>: Le bit le plus élevé à droite est 0, et le côté gauche est 0; Le plus élevé est 1, et le côté gauche est 1 >>>: décalage droit non signé, que le bit le plus élevé soit 0 ou 1, le côté gauche est 0 et le côté gauche est 0.
6. Opérateur à trois points:
Format: (Expression relationnelle)? Expression 1: Expression 2;
Si la condition est vraie, le résultat après l'opération est l'expression 1;
Si la condition est fausse, le résultat après l'opération est l'expression 2;
Exemple:
Obtenez le grand nombre de deux numéros:
Le code du code de copie est le suivant: int x = 3, y = 4, z; z = (x> y)? X: y; // z La variable stocke un grand nombre de deux nombres.
Obtenez la valeur maximale de trois entiers:
// Méthode 1: en deux étapes // a: Comparez les valeurs maximales de A et B First // B: Comparez les valeurs maximales de A et B avec C int temp = ((a> b)? A: B); //System.out.println(Temp); int max1 = (temp> c? temp: c); System.out.println ("Max1:" + Max1); // Méthode 2: obtenir int max2 en une étape = (a> b)? ((A> c)? A: c): ((b> c)? B: c); // Cette méthode n'est pas recommandée: // int max2 = a> b? A> c? R: C: B> C? B: C; //System.out.println("max2:"+max2);Il est recommandé d'utiliser la méthode un. De plus, dans le mode 2, la ligne 10 et la ligne 12 sont les mêmes et sont utilisés par l'opérateur trigonométrique.
Comparez si deux entiers sont égaux:
// Comparez si deux entiers sont égaux int m = 100; int n = 200; // booléen drapeau = (m == n)? vrai: false; booléen drapeau = (m == n); System.out.println (drapeau);
2. Entrée des données du clavier
Lorsque nous écrivons des programmes, les valeurs de données sont fixes, mais dans le développement réel, les valeurs de données doivent changer, donc je prévois d'améliorer les données en entrée au clavier pour améliorer la flexibilité du programme.
Comment implémenter la saisie des données du clavier? (N'oubliez pas de l'utiliser maintenant)
(1) Package de transmission (position en haut de la définition de la classe): Importer java.util.scanner;
(2) Créer un objet d'entrée de clavier: Scanner SC = nouveau scanner (System.in);
(3) Obtenez des données via l'objet: int x = sc.nextint ();
Exemple de code:
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.