Java pour les débutants, les expressions et les opérateurs 2

introduction

Cet article est un mémorandum. Bien qu'il s'agisse d'un contenu de niveau de référence, le code à publier dans cet article est ** Mauvais ** sont les choses principales. C'est dans le but de publier la partie qui s'est réellement trompée lors du codage et de la publier pour une réflexion personnelle. De plus, je n'aborderai pas la partie profonde ici, car je la passerai en revue plus tard tout en étudiant les questions d'examen Java Silver.

environnement

Langue: Java11, JDK13.0.2 Environnement d'exploitation: Windows 10

opérateur

La dernière fois, j'ai traité de + utilisé pour l'addition et la concaténation, et = utilisé pour la substitution. Il existe de nombreux opérateurs Java, mais cette fois nous traiterons des opérateurs typiques. Énumérés ci-dessous.

** 1. Multiplier (*), Diviser (/), Résidu (%) ** ** 2. Équivalent (==) et inégal (! =) ** ** 3. Incrémenter (++) et décrémenter (-), et leur pré-suffixe **

Multiplier / diviser / reste

En Java (au moins Python, comme je le sais), utilisez * au lieu de x pour la multiplication. Divisez par / au lieu de ÷, et utilisez% pour le reste (ce qui donne le nombre de restes).

La division et les restes ne peuvent pas être divisés par 0 (division 0). Cela n'apparaît pas comme une erreur lors de la compilation, mais une exception est levée au moment de l'exécution et le traitement s'arrête. Il y a un article dans Qiita à propos de la division 0 sur cette question, donc je vais le lier (même si c'était un article il y a plus de 3 ans).

["Divisé par 0"](http: // https: //qiita.com/yamayamasan/items/bfb2078bb899349b45ac) @yamayasan

Voici un exemple de ce que j'ai fait une erreur.

ZeroDivisionError.java


int dayInMonth = 0;
...
//J'ai oublié d'entrer une valeur pour dayInMonth dans le processus jusqu'à présent.
averageFeedCatFood = 
totalFeedCatFood / dayInMonth;

Pour calculer la quantité moyenne de nourriture donnée à un chat en un mois, divisez simplement la quantité totale de nourriture par le nombre de jours dans un mois. Il est mauvais de définir la valeur initiale sur 0, mais n'oubliez pas de saisir la valeur dans dayInMonth au milieu du processus.

Equivalent et inégal

J'ai écrit la dernière fois que = n'est pas équivalent et est utilisé comme affectation. Utilisez == pour représenter l'équivalence d'origine et! = Pour représenter l'inégalité (pas d'espace entre = et!). L'équivalence et l'inégalité examinent la relation entre les termes de l'opérande 2 et sont également appelées ** opérateurs relationnels **. Il est souvent utilisé lorsque l'équivalence / inégalité est utilisée comme condition de l'instruction if, et il est jugé par la valeur de vérité de l'expression.

ex) if( int lastDayInFeburary == 29){ totalPayment = totalPayment + dailyPayment; } else{ totalPayment = totalPayment; } //2月に29日がある場合、合計支払いに一日分の支払いを追加する処理。

J'ai fait une erreur ci-dessous.

WrongRerational.java


boolean judge = True;
int judgementDay = 30;

if(judgementDay != 30){
    judge = False;
}
else{
    judge = True;
}
System.out.println("Annonce d'aujourd'hui" + judge + "Ce n'est donc pas le jour du jugement dernier.")
//J'ai simplement mal compris quel juge était
//J'ai fait de la phrase une phrase utile.

En ce qui concerne les expressions conditionnelles plus difficiles, si vous comptez sur if, vous aurez des problèmes car les résultats seront différents de ce que vous attendiez.

Décrément incrémenté

Increment (++) augmente la valeur de la variable de 1 et l'affecte, et Decrement (-) diminue la valeur de la variable de 1 et l'affecte. Voici comment l'écrire. ex) int day++; // C'est le même processus que int day = day + 1;. // jour entier + = 1 est le même ** (opérateur d'affectation) **

int couponTickets--; // C'est la même chose que int couponTickets = couponTickets -1; // couponTickets- = 1 est le même ** (opérateur d'affectation) **

De plus, ce décrément d'incrémentation est ** traité différemment selon qu'il est placé avant ou après la variable **.

Par exemple, découvrez quel commentaire est erroné. Notez qu'il est trop long (affichez tout le processus de classe).

piggyBank.java


class piggyBank
{
    public static void main(String[] args)
    {
        int piggyBank = 99;
        System.out.println("La boîte d'épargne actuelle" + piggyBank + "Il y a un cercle.");
        //99

        System.out.println("La boîte d'épargne actuelle" + piggyBank + "Il y a un cercle.");
        //99

        piggyBank = piggyBank++;
        System.out.println("La boîte d'épargne actuelle" + piggyBank + "Il y a un cercle.");
        //99

        piggyBank = piggyBank++;
        System.out.println("La boîte d'épargne actuelle" + piggyBank + "Il y a un cercle.");
        //99

        piggyBank = ++piggyBank;
        System.out.println("La boîte d'épargne actuelle" + piggyBank + "Il y a un cercle.");
        //100

        piggyBank = ++piggyBank;
        System.out.println("La boîte d'épargne actuelle" + piggyBank + "Il y a un cercle.");
        //101

        piggyBank = piggyBank--;
        System.out.println("La boîte d'épargne actuelle" + piggyBank + "Il y a un cercle.");
        //100?

        piggyBank = piggyBank--;
        System.out.println("La boîte d'épargne actuelle" + piggyBank + "Il y a un cercle.");
        //100

        piggyBank = --piggyBank;
        System.out.println("La boîte d'épargne actuelle" + piggyBank + "Il y a un cercle.");
        //99

        piggyBank = --piggyBank;
        System.out.println("La boîte d'épargne actuelle" + piggyBank + "Il y a un cercle.");
        //99

        System.out.println("La boîte d'épargne actuelle" + piggyBank + "Il y a un cercle.");
        //
    }
}

Dans le cas de postfix, remplacez et ajoutez +1 à la valeur. Dans le cas du préfixe, remplacez-le après avoir ajouté +1 à la valeur. Examen requis ici.

À la fin

Je pense que l'équivalence et l'inégalité ne sont pas encore bien comprises. Revoir au moment du calcul binaire. Il y a de nombreuses erreurs dans la diminution de l'incrémentation. Vous devrez le faire vous-même et pratiquer.

référence

Je ne l'ai jamais écrit auparavant, alors je vais vous donner mon livre de référence. Ajouter aux articles précédents. J'écris et compile autant que possible des variables et des expressions moi-même, donc si je veux les citer complètement, je vais les décrire.

Easy Java 7e édition

Recommended Posts

Java pour les débutants, les expressions et les opérateurs 2
Apprentissage pour la première fois des expressions et opérateurs Java # 3
Classes et instances Java pour les débutants
[Pour les débutants] Différence entre Java et Kotlin
[Pour les débutants] À propos des expressions lambda et de l'API Stream
Exécution de débogage Java [pour les débutants Java]
[Java] Instruction de base pour les débutants
Java pour les débutants, masquage des données
Application Java pour les débutants: stream
Instructions Java while et for
Liste des instructions Java fréquemment utilisées (pour les débutants et les débutants)
[Pour les débutants] Explication des classes, des instances et des statiques en Java
SDK AWS pour Java 1.11.x et 2.x
[Pour les débutants en Java] À propos de la gestion des exceptions
De nos jours, les expressions Java Lambda et l'API de flux
Apprenez de «Et alors», les bases de Java [pour les débutants]
Java à partir du débutant, opérateur logique / opérateur conditionnel
[Java] Proxy pour la journalisation des résultats SQL et SQL
[Java] Mécanisme de calcul, opérateurs et conversion de type
Pour l'apprentissage JAVA (2018-03-16-01)
IDE 2017 pour Java
Java et JavaScript
XXE et Java
Java pour instruction
Consulter le mémo de la copie de fichier de Java 1.7 ou version ultérieure
Une collection de questions simples pour les débutants Java
[Introduction à Java] Bases de l'arithmétique Java (pour les débutants)
Utilisons Java New FileIO! (Introduction, pour les débutants)
[Java] pour instruction, while instruction
Getter et Setter (Java)
À propos du traitement du crud et des produits utilisant un appareil (pour les débutants)
[Java] Thread et exécutable
Échantillon jusqu'à l'authentification OAuth 2.0 et l'acquisition de jetons d'accès (Java)
[Pour les débutants] DI ~ Les bases de DI et DI au printemps ~
[Java] Package de gestion
[Java] Trier la liste à l'aide de flux et d'expressions lambda
Java vrai et faux
[Java] pour instruction / étendu pour instruction
[Java] Comparaison des chaînes de caractères et && et ||
Le débogueur Java VSCode pour la construction Java a échoué Causes et contre-mesures
Comprendre les expressions lambda Java 8
Contre-mesures pour OutOfMemoryError en java
[Pour les débutants] Exemple minimum pour afficher RecyclerView en Java
PNL pour Java (NLP4J) (2)
Java - Sérialisation et désérialisation
[Java] Arguments et paramètres
(Mémo) Java pour instruction
PNL pour Java (NLP4J) (1)
Introduction à Java pour les débutants Connaissance de base du langage Java ①
Variables de tableau et tableaux associatifs Les débutants ont compilé pour les débutants
Ceci et cela pour éditer ini en Java. : inieditor-java
À propos des expressions Java lambda
timedatectl et Java TimeZone
[Java] Branchement et répétition
Préparer l'environnement pour java11 et javaFx avec Ubuntu 18.4
Expliquer les expressions lambda Java 8