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.
Sprache: Java11, JDK13.0.2 Betriebsumgebung: Windows 10
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 **
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.
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.
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.
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.
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.
Recommended Posts