Java für Anfänger, Ausdrücke und Operatoren 2

Einführung

Dieser Artikel ist ein Memorandum. Obwohl es sich um einen Inhalt auf Referenzebene handelt, lautet der in diesem Artikel zu veröffentlichende Code ** Falsch ** sind die Hauptsachen. Dies dient dazu, den Teil zu veröffentlichen, der beim Codieren tatsächlich falsch war, und ihn zur Selbstreflexion zu veröffentlichen. Außerdem werde ich hier nicht auf den tiefen Teil eingehen, da ich ihn später überprüfen werde, während ich auch die Fragen zur Java Silver-Prüfung studiere.

Umgebung

Sprache: Java11, JDK13.0.2 Betriebsumgebung: Windows 10

Operator

Letztes Mal beschäftigte ich mich mit +, das zum Hinzufügen und Verketten verwendet wurde, und =, das zum Ersetzen verwendet wurde. Es gibt viele Java-Operatoren, aber dieses Mal werden wir uns mit typischen befassen. Nachfolgend aufgeführten.

** 1. Multiplizieren (*), Teilen (/), Rückstand (%) ** ** 2. Äquivalent (==) und ungleich (! =) ** ** 3. Inkrementieren (++) und Dekrementieren (-) sowie deren Prä-Postfix **

Multiplizieren / Teilen / Rest

Verwenden Sie in Java (zumindest Python, wie ich weiß) * anstelle von x für die Multiplikation. Teilen Sie durch / anstelle von ÷ und verwenden Sie% für den Rest (der die Anzahl der verbleibenden Reste angibt).

Dividieren und Reste dürfen nicht durch 0 geteilt werden (0 Division). Es wird beim Kompilieren nicht als Fehler angezeigt, aber zum Zeitpunkt der Ausführung wird eine Ausnahme ausgelöst und die Verarbeitung wird gestoppt. Es gibt einen Artikel in Qiita über 0 Division zu diesem Thema, daher werde ich ihn verlinken (obwohl es ein Artikel vor mehr als 3 Jahren war).

["Durch 0 teilen"](http: // https: //qiita.com/yamayamasan/items/bfb2078bb899349b45ac) @yamayasan

Hier ist ein Beispiel dafür, was ich tatsächlich gemacht habe.

ZeroDivisionError.java


int dayInMonth = 0;
...
//Ich habe bisher vergessen, einen Wert für dayInMonth einzugeben.
averageFeedCatFood = 
totalFeedCatFood / dayInMonth;

Um die durchschnittliche Futtermenge zu berechnen, die einer Katze in einem Monat gegeben wird, dividieren Sie einfach die Gesamtfuttermenge durch die Anzahl der Tage in einem Monat. Es ist schlecht, den Anfangswert auf 0 zu setzen, aber vergessen Sie nicht, den Wert in dayInMonth mitten im Prozess einzugeben.

Gleichwertig und ungleich

Ich habe das letzte Mal geschrieben, dass = nicht gleichwertig ist und als Aufgabe verwendet wird. Verwenden Sie ==, um die ursprüngliche Äquivalenz darzustellen, und! =, Um die Ungleichung darzustellen (kein Leerzeichen zwischen = und!). Äquivalenz und Ungleichung untersuchen die Beziehung zwischen Operanden 2 und werden auch als ** relationale Operatoren ** bezeichnet. Es wird häufig verwendet, wenn Äquivalenz / Ungleichung als Bedingung für die if-Anweisung verwendet wird, und es wird anhand des Wahrheitswertes des Ausdrucks beurteilt.

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

Ich habe unten einen Fehler gemacht.

WrongRerational.java


boolean judge = True;
int judgementDay = 30;

if(judgementDay != 30){
    judge = False;
}
else{
    judge = True;
}
System.out.println("Die heutige Ankündigung" + judge + "Es ist also kein Tag des Jüngsten Gerichts.")
//Ich habe einfach falsch verstanden, welcher Richter war
//Ich habe den Satz zu einem hilfreichen Satz gemacht.

Wenn es um schwierigere bedingte Ausdrücke geht und Sie sich auf if verlassen, werden Sie in Schwierigkeiten geraten, da die Ergebnisse von den erwarteten Ergebnissen abweichen.

Inkrementieren Dekrementieren

Inkrement (++) erhöht den Wert der Variablen um 1 und weist ihn zu, und Dekrement (-) verringert den Wert der Variablen um 1 und weist ihn zu. So schreibt man es. ex) int day++; // Dies ist der gleiche Vorgang wie int day = day + 1; // int day + = 1 ist derselbe ** (Zuweisungsoperator) **

int couponTickets--; // Dies ist dasselbe wie int couponTickets = couponTickets -1; // couponTickets- = 1 ist derselbe ** (Zuweisungsoperator) **

Außerdem wird dieses Inkrementdekrement ** unterschiedlich verarbeitet, je nachdem, ob es vor oder nach der Variablen ** platziert wird.

Finden Sie zum Beispiel heraus, welcher Kommentar falsch ist. Beachten Sie, dass es zu lang ist (veröffentlichen Sie den gesamten Klassenprozess).

piggyBank.java


class piggyBank
{
    public static void main(String[] args)
    {
        int piggyBank = 99;
        System.out.println("Die aktuelle Sparbox" + piggyBank + "Es gibt einen Kreis.");
        //99

        System.out.println("Die aktuelle Sparbox" + piggyBank + "Es gibt einen Kreis.");
        //99

        piggyBank = piggyBank++;
        System.out.println("Die aktuelle Sparbox" + piggyBank + "Es gibt einen Kreis.");
        //99

        piggyBank = piggyBank++;
        System.out.println("Die aktuelle Sparbox" + piggyBank + "Es gibt einen Kreis.");
        //99

        piggyBank = ++piggyBank;
        System.out.println("Die aktuelle Sparbox" + piggyBank + "Es gibt einen Kreis.");
        //100

        piggyBank = ++piggyBank;
        System.out.println("Die aktuelle Sparbox" + piggyBank + "Es gibt einen Kreis.");
        //101

        piggyBank = piggyBank--;
        System.out.println("Die aktuelle Sparbox" + piggyBank + "Es gibt einen Kreis.");
        //100?

        piggyBank = piggyBank--;
        System.out.println("Die aktuelle Sparbox" + piggyBank + "Es gibt einen Kreis.");
        //100

        piggyBank = --piggyBank;
        System.out.println("Die aktuelle Sparbox" + piggyBank + "Es gibt einen Kreis.");
        //99

        piggyBank = --piggyBank;
        System.out.println("Die aktuelle Sparbox" + piggyBank + "Es gibt einen Kreis.");
        //99

        System.out.println("Die aktuelle Sparbox" + piggyBank + "Es gibt einen Kreis.");
        //
    }
}

Ersetzen Sie im Fall von Postfix und fügen Sie dann +1 zum Wert hinzu. Im Falle eines Präfixes ersetzen Sie nach dem Hinzufügen von +1 zum Wert. Überprüfung hier erforderlich.

Am Ende

Ich denke, dass Äquivalenz und Ungleichheit noch nicht gut verstanden sind. Überprüfung zum Zeitpunkt der binären Berechnung. Es gibt viele Fehler beim Inkrementieren. Sie müssen es selbst machen und üben.

Referenz

Ich habe es noch nie geschrieben, also gebe ich Ihnen mein Nachschlagewerk. Zu früheren Artikeln hinzufügen. Ich schreibe und kompiliere Variablen und Ausdrücke so oft wie möglich selbst. Wenn ich sie also vollständig zitieren möchte, werde ich sie beschreiben.

Easy Java 7th Edition

Recommended Posts

Java für Anfänger, Ausdrücke und Operatoren 2
Zum ersten Mal lernen Java # 3 Ausdrücke und Operatoren
Klassen und Instanzen Java für Anfänger
[Für Anfänger] Unterschied zwischen Java und Kotlin
[Für Anfänger] Über Lambda-Ausdrücke und Stream-API
Java-Debug-Ausführung [für Java-Anfänger]
[Java] Grundlegende Aussage für Anfänger
Java für Anfänger, Daten verstecken
Java-Anwendung für Anfänger: Stream
Java während und für Anweisungen
Java Häufig verwendete Anweisungsliste (für Anfänger und Anfänger)
[Für Anfänger] Erläuterung von Klassen, Instanzen und Statik in Java
AWS SDK für Java 1.11.x und 2.x.
[Für Java-Anfänger] Informationen zur Ausnahmebehandlung
Heutzutage Java Lambda Expressions und Stream API
Lernen Sie aus "Na und", den Grundlagen von Java [für Anfänger]
Java ab Anfänger, logischer Operator / bedingter Operator
[Java] Proxy zum Protokollieren von SQL und SQL-Ergebnissen
[Java] Berechnungsmechanismus, Operatoren und Typkonvertierung
Für JAVA-Lernen (2018-03-16-01)
2017 IDE für Java
Java und JavaScript
XXE und Java
Java für Anweisung
Lesen Sie den Hinweis zur Dateikopie von Java 1.7 oder höher
Eine Sammlung einfacher Fragen für Java-Anfänger
[Einführung in Java] Grundlagen der Java-Arithmetik (für Anfänger)
Verwenden wir Java New FileIO! (Einführung für Anfänger)
[Java] für Anweisung, während Anweisung
Getter und Setter (Java)
Über Rohölverarbeitung und Produkte mit Gerät (für Anfänger)
[Java] Thread und ausführbar
Beispiel für eine OAuth 2.0-Authentifizierung und Zugriffstokenerfassung (Java)
[Für Anfänger] DI ~ Die Grundlagen von DI und DI im Frühjahr ~
[Java] Paket für die Verwaltung
[Java] Sortieren Sie die Liste mit Streams und Lambda-Ausdrücken
Java wahr und falsch
[Java] für Anweisung / erweitert für Anweisung
[Java] Vergleich von Zeichenketten und && und ||
VSCode Java Debugger für Java Build fehlgeschlagen Ursachen und Gegenmaßnahmen
Verstehen Sie Java 8 Lambda-Ausdrücke
Gegenmaßnahmen für OutOfMemoryError in Java
[Für Anfänger] Mindestbeispiel für die Anzeige von RecyclerView in Java
NLP für Java (NLP4J) (2)
Java - Serialisierung und Deserialisierung
[Java] Argumente und Parameter
(Memo) Java für Anweisung
NLP für Java (NLP4J) (1)
Einführung in Java für Anfänger Grundkenntnisse der Java-Sprache ①
Array-Variablen und assoziative Arrays Anfänger haben für Anfänger kompiliert
Dies und das zum Bearbeiten von ini in Java. : inieditor-java
Über Java-Lambda-Ausdrücke
timedatectl und Java TimeZone
[Java] Verzweigen und Wiederholen
Bereiten Sie die Umgebung für Java11 und JavaFx mit Ubuntu 18.4 vor
Erläutern Sie Java 8-Lambda-Ausdrücke