In diesem Tutorial werden verschiedene Methoden eingeführt, um die Anzahl der Elemente im Java -Stapel zu berechnen. In Java ist der Stapel eine grundlegende Datenstruktur, die dem letzten Prinzip (First Out) folgt, was bedeutet, dass auf die kürzlich dem Stapel hinzugefügten Elemente zuerst zugegriffen werden.
Die praktischen Anwendungen des Stacks umfassen Funktionsaufrufmanagement, Expressionsbewertung usw. In diesen Szenarien müssen wir m?glicherweise die Anzahl der Elemente im Stapel berechnen. Wenn Sie beispielsweise den Stapel für die Funktionsaufrufverwaltung verwenden, müssen Sie die Gesamtzahl der Funktionsaufrufe berechnen.Wir werden drei M?glichkeiten untersuchen, um die Anzahl der Elemente im Stapel zu berechnen:
- Verwenden Sie
- Methoden
Stack.size()
verwenden - Schleife (Iterationsmethode)
for
rekursive Methode - verwenden
Methoden Stack.size()
Die erste Methode zur Berechnung der Anzahl der Elemente im Stapel besteht darin, die -Methode zu verwenden. Es kann helfen, die Gr??e des Stapels zu finden, was der Gesamtzahl der Elemente im Stapel entspricht. Stack.size()
Die folgende Syntax kann in Java unter Verwendung der
-Methode verwendet werden: Stack.size()
s1.size();In der obigen Syntax ist "S1" eine Stapeldatenstruktur, die Elemente wie Zahlen, Zeichenfolgen und Booleschen enth?lt.
Parameter
Die
Methode akzeptiert keine Parameter. Stack.size()
Die Methode
gibt die Gesamtzahl der Elemente im Stapel zurück. Stack.size()
im folgenden Code definieren wir den Stapel "S1". Danach setzen wir 3 ganze Zahlen in den Stapel ein. Wenn wir die
-Methode mit dem Stapel verwenden, gibt sie "3" als Ausgabe zurück, wodurch die Gesamtzahl der Elemente im Stapel angegeben ist. size()
import java.util.Stack; public class StackExample { public static void main(String[] args) { Stack<Integer> s1 = new Stack<>(); // 將元素壓入棧 s1.push(1); s1.push(2); s1.push(3); // 使用size()方法獲取元素?cái)?shù)量 int count = s1.size(); // 打印元素?cái)?shù)量 System.out.println("棧中元素?cái)?shù)量:" + count); } }Ausgabe
<code>棧中元素?cái)?shù)量:3</code>verwenden
Schleife (Iterationsmethode) for
Schauen wir uns nun die zweite M?glichkeit an, die Anzahl der Elemente im Stapel zu berechnen. Bei dieser Methode werden wir jedes Element des Stapels unter Verwendung durchlaufen und die Gesamtzahl der Elemente im Stapel berechnen. for
Die Gesamtzahl der Elemente im Stapel kann unter Verwendung der folgenden Syntax unter Verwendung von
berechnet werden: for
for (Integer element : s1) { count++; }In der obigen Syntax ist "S1" ein Stapel, und wir iterieren über die Elemente des "S1" -Stapels. In der Schleifenk?rper erh?hen wir den Wert der "Anzahl" -Variable um 1, wodurch die Anzahl der Elemente im Stapel gespeichert ist.
Beispiel
Im folgenden Beispiel durchlaufen wir jedes Element des Stapels mit
und erh?hen den Wert der "Anzahl" -Variable in jeder Iteration. Danach drucken wir den Wert der "Count" -Variablen, deren Anzahl der Elemente im Stapel. for
import java.util.Stack; public class StackCountIterative { public static void main(String[] args) { Stack<Integer> s1 = new Stack<>(); // 將元素壓入棧 s1.push(1); s1.push(2); s1.push(3); // 使用迭代計(jì)算元素?cái)?shù)量 int count = 0; for (Integer element : s1) { count++; } // 打印元素?cái)?shù)量 System.out.println("棧中元素?cái)?shù)量:" + count); } }Ausgabe
<code>棧中元素?cái)?shù)量:3</code>rekursive Methode
verwenden
Die dritte M?glichkeit zur Berechnung aller Stapelelemente besteht darin, die Rekursion zu verwenden. Bei diesem Ansatz werden wir jedes Element des Stapels rekursiv durchqueren und die Gesamtzahl der Elemente im Stapel verfolgen.Grammatik
Alle Stapelelemente k?nnen mit der rekursiven Methode unter Verwendung der folgenden Syntax berechnet werden:
if (s1.isEmpty()) { return 0; } // 移除頂部元素并計(jì)算其余元素 Integer element = s1.pop(); int count = 1 + countElements(s1); // 將元素壓回以恢復(fù)棧 s1.push(element);In der obigen Syntax folgen wir die folgenden Schritte:
- Wenn der Stapel leer ist, geben Sie "0" zurück, was darauf hinweist, dass es keine Elemente im Stapel gibt.
- Entfernen Sie Elemente im Stapel, da wir die Anzahl der Vorkommen des aktuellen Elements im n?chsten Schritt berechnen.
- Machen Sie einen rekursiven Anruf in den aktualisierten Stapel, fügen Sie seinen Ergebniswert zu "1" hinzu und speichern Sie ihn in der Variablen "Count". Hier fügen wir dem zuvor entfernten Element "1" hinzu.
- Als n?chstes drücken Sie "Element" erneut in den Stapel, um den Stapelstatus unver?ndert zu halten.
Beispiel
In diesem Beispiel verwenden wir eine rekursive Methode, um die Anzahl der Elemente im Stapel zu berechnen.
s1.size();
Ausgabe
import java.util.Stack; public class StackExample { public static void main(String[] args) { Stack<Integer> s1 = new Stack<>(); // 將元素壓入棧 s1.push(1); s1.push(2); s1.push(3); // 使用size()方法獲取元素?cái)?shù)量 int count = s1.size(); // 打印元素?cái)?shù)量 System.out.println("棧中元素?cái)?shù)量:" + count); } }
Schlussfolgerung
Wir untersuchen drei Methoden, um die Gesamtzahl der Elemente im Stapel zu berechnen. Die erste Methode verwendet die Stack.size()
-Methode, die einfach und direkt ist. Die zweite Methode verwendet eine for
-Schleife, um Stapelelemente zu berechnen, was etwas komplizierter ist als die erste Methode. Die dritte Methode verwendet Rekursion, um Stapelelemente zu berechnen, die für Anf?nger komplizierter sein k?nnen.
Wenn Sie bestimmte Operationen auf jedem Element des Stapels bei der Berechnung der Stapelelemente ausführen müssen, sollten Sie die zweite Methode verwenden.
Das obige ist der detaillierte Inhalt vonJava -Programm zum Z?hlen aller Stackelemente. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Um JDBC -Transaktionen korrekt zu verarbeiten, müssen Sie zun?chst den automatischen Komiti -Modus ausschalten und dann mehrere Vorg?nge ausführen und schlie?lich entsprechend den Ergebnissen festlegen oder rollen. 1. Nennen Sie Conn.SetAutoCommit (False), um die Transaktion zu starten. 2. Führen Sie mehrere SQL -Operationen aus, z. B. einfügen und aktualisieren. 3. Rufen Sie Conn.Commit () an, wenn alle Vorg?nge erfolgreich sind, und rufen Sie Conn.Rollback () auf, wenn eine Ausnahme auftritt, um die Datenkonsistenz zu gew?hrleisten. Gleichzeitig sollten Try-with-Ressourcen verwendet werden, um Ressourcen zu verwalten, Ausnahmen ordnungsgem?? zu behandeln und Verbindungen zu schlie?en, um Verbindungsleckage zu vermeiden. Darüber hinaus wird empfohlen, Verbindungspools zu verwenden und Save -Punkte zu setzen, um teilweise Rollback zu erreichen und Transaktionen so kurz wie m?glich zu halten, um die Leistung zu verbessern.

ThejvMenablesJavas "Writeonce, Runanywhere" -CapabilityByexecutingByteCodethroughfourMainComponents: 1.TheClassloadersubStemLoads, Links, undinitializes

Verwenden Sie Klassen im Java.Time -Paket, um das alte Datum und die Kalenderklassen zu ersetzen. 2. Erhalten Sie das aktuelle Datum und die aktuelle Uhrzeit durch LocalDate, LocalDatetime und Local Time; 3. Erstellen Sie ein bestimmtes Datum und eine bestimmte Uhrzeit mit der von () Methode; 4.. Verwenden Sie die Plus/Minus -Methode, um die Zeit nicht zu erh?hen und zu verkürzen. 5. Verwenden Sie ZonedDatetime und zoneId, um die Zeitzone zu verarbeiten. 6. Format und analysieren Sie Datumszeichenfolgen über DateTimeFormatter; 7. Verwenden Sie sofortige, um bei Bedarf mit den alten Datumstypen kompatibel zu sein. Die Verarbeitung der Datum in der modernen Java sollte der Verwendung von Java.Timeapi vorrangig machen, was klare, unver?nderliche und linear ist

Pre-Formancetartuptimemoryusage, QuarkusandmicronautleadduToCompile-Time-foringandgraalvSupport, WithQuarkusofttenperformLightBetterin serverloser Szenarien.2. Thyvelopecosystem,

Die Müllsammlung von Java (GC) ist ein Mechanismus, der automatisch den Speicher verwaltet, der das Risiko eines Speicherlecks verringert, indem unerreichbare Objekte zurückgeführt werden. 1.GC beurteilt die Zug?nglichkeit des Objekts aus dem Stammobjekt (z. B. Stapelvariablen, aktive Threads, statische Felder usw.) und nicht erreichbare Objekte als Müll markiert. 2. Basierend auf dem markierten Algorithmus markieren Sie alle erreichbaren Objekte und l?schen Sie nicht markierte Objekte. 3.. Verfolgen Sie eine Generationskollektionsstrategie: Die neue Generation (Eden, S0, S1) führt h?ufig MollGC aus; Die ?lteren Menschen erzielen weniger, dauert jedoch l?nger, um MajorGC durchzuführen. MetaPace speichert Klassenmetadaten. 4. JVM bietet eine Vielzahl von GC -Ger?ten: SerialGC ist für kleine Anwendungen geeignet; ParallelgC verbessert den Durchsatz; CMS reduziert sich

Networkportsandfirewallsworktogethertoenablecommunicationwhileensuringsecurity.1.Networkportsarevirtualendpointsnumbered0–65535,withwell-knownportslike80(HTTP),443(HTTPS),22(SSH),and25(SMTP)identifyingspecificservices.2.PortsoperateoverTCP(reliable,c

Auf Defer wird verwendet, um bestimmte Vorg?nge auszuführen, bevor die Funktion zurückgibt, z. B. die Reinigungsressourcen. Die Parameter werden sofort bewertet, wenn sie aufgeschoben werden, und die Funktionen werden in der Reihenfolge von Last-In-First-Out (LIFO) ausgeführt. 1. Mehrere Defers werden in umgekehrter Reihenfolge der Erkl?rungen ausgeführt. 2. h?ufig für die sichere Reinigung wie das Schlie?en von Dateien verwendet; 3. Der benannte Rückgabewert kann ge?ndert werden; V. 5. Vermeiden Sie den Missbrauch von Verschiebungen in Schleifen, um Ressourcenleckage zu verhindern. Die korrekte Verwendung kann die Sicherheit und die Lesbarkeit der Code verbessern.

GradleStheBetterChoiceFormostnewProjectsDuetoitSuperiorFlexibilit?t, Leistung und ModerntoolingSupport.1.GRADLE'SGROOVY/KOTLINDSLISMORECONCISEANDEIPRESSIVETHANMANMANBOSEXML.2.GRAGRECONCISEANDEPRPRESSIVETHANMAVENSVOSEXML.2.
