Sådan implementeres kommandolinjeargumenter i Java



Denne artikel hjælper dig med en detaljeret viden om de forskellige kommandolinjeargumenter i Java sammen med eksempler for bedre forståelse.

Kommandolinjeargumentet i Java er det argumenter videregivet til et program på det tidspunkt, hvor du kører det. De gemmes i strengformat, og strengarrayet sendes til args [] parameter af main () -metoden. Vi lærer mere gennem denne docket nedenfor.

c ++ spring til linje

Første Java-program

Du vil udvikle et program i Java til udskrivning 'Hej Verden' på skærmen. Hvilke trin vil du overveje?





  • Installere JDK videre til din maskine.
  • Sæt sti og klassesti i din miljøvariabel, der er tilgængelig på din maskine.
  • Åbn Editor (Notesblok i tilfælde af Windows), og skriv nedenstående program.
klasse MyFirstJavaProgram {public static void main (String [] args) {System.out.println (“Hello World”)}}
  • Nu gemmer du dette program på et bestemt sted, f.eks C: / javaprograms /
  • Du åbner en kommandoprompt (cmd i tilfælde af Windows) naviger til ovenstående placering.

Kommandolinjeargumenter i Java Edureka Billede 1

  • Du kompilerer dit program ved hjælp af javac værktøj til kompilering MyFirstJavaProgram.java i CMD-prompt



  • Nu vil du køre din første applikation, så skriv java MyFirstJavaProgram

  • Duvil være i stand til at se Hej Verden når du trykker på Gå ind nøgle.

Kommandolinjeargumenter

Det syntaks af java-kommandoen for at starte en applikation er

Java [optioner] hovedklasse [args]

Her, muligheder er kommandolinjemulighederne såsom -hun, etc. hovedklasse er navnet på den klasse, der indeholder hovedmetoden. Specifikt den klasse, du vil starte.



Endelig [args] er de argumenter, der sendes til hovedmetoden. I vores program har vi angivet streng array som en parameter. Derfor kan flere argumenter sendes ved hjælp af mellemrum.

Som standard kan Java-applikationen acceptere et hvilket som helst antal argumenter inklusive ingen argumenter fra kommandolinjen. Dette kan bruges til at specificere konfigurationsoplysninger, når Ansøgning lanceres. Det betyder antag, at vi ikke kender detaljerne i konfigurationen, før vi kører applikationen.

Disse detaljer kan genbruges i din ansøgning, så de ikke behøver at være det hårdkodet. Konfigurationsoplysningerne kan dog gives i en tegnstreng eller i en fil. Vil det hæmme min applikationens ydeevne?

Svaret er, Ingen . Dette vil under ingen omstændigheder hæmme applikationens ydeevne generelt. Fordi vi kun læser konfigurationsfilen på én gang under opstart af applikationen. På denne måde behøver du ikke at kompilere din kode igen og igen.

Lad os sige, for eksempel, at vi har en config.egenskaber fil, der har alle konfigurationsegenskaber i nøgle-værdi format. Men som juniorudvikler ved vi ikke engang, hvor denne fil er gemt klient placering, når vi sender applikationen.

Hvad vi kan sige, at klienten bliver nødt til at angive stien som et argument til applikationen over kommandolinje.

java MyClass “c: //path/to/config.properties”

Når MyClass startes, overfører runtime-systemet kommandolinjeargumenterne til programmets hovedmetode via en matrix af streng her, det var en fuld sti.

Overvej, et simpelt program til at demonstrere de poster, der er foretaget af brugeren fra kommandolinjen, udskrives selv.

offentlig klasse MyClass {public static void main (String [] args) {for (String s: args) {System.out.println (s)}}}

For at køre dette program kan brugeren indtaste input som nedenfor.

java MyClass ' Jeg har oprettet mit første program. '' Det her er fedt . '

//Produktion:

Jeg har oprettet mit første program.
Det her er fedt.

Dette skal bemærkes, at hver streng, der er lukket i anførselstegn og adskilt af mellemrum, betragtes som et nyt argument. Hvert argument placeres på en ny linje årsag til println.

Hvad hvis jeg vil have Number til at videregive som kommandolinjeargumenter?

For at kunne læse tal skal vi analysere Numeriske kommandolinjeargumenter . Dette skyldes, at java kun tager en række strenge som et argument for dens hovedmetode. Derfor skal vi konvertere String-argument, der repræsenterer et tal som “10” til dets numeriske værdi.

Lad os tage et eksempel ved at konstruere et program.

klasse SquareCalculator {public static void main (String [] args) {int firstArg if (args.length> 0) {try {firstArg = Integer.parseInt (args [0])} catch (NumberFormatException nfe) {System.out.println ('Argumenter' + args [0] + 'skal være et heltal.') System.exit (1)} System.out.println ('Square er' + firstArg * firstArg)}}

For at køre denne applikation bruger vi nedenstående linje

java SquareCalculator 10

//Produktion:

Square er 100

Kommandolinjeargumenter i en IDE

Skønheden er afhængig af parse Int-metoden i heltaleklassen. Alle antal klasser som heltal, flyde, dobbelt og så videre har parseXXX metode, der konverterer streng til det respektive objekt af deres type.

Som vi alle ved, starter arrayet sit indeks med nul. Derfor args [0] er det første indeks i dette Snor[] array, som er taget fra konsollen. Tilsvarende args [1] er anden, args [2] er det tredje element og så videre.

Når en applikation startes, kørselstid system overfører kommandolinjeargumenterne til programmets hovedmetode via en række strenge.

Hvordan passerer vi kommandolinjeargumentet ved hjælp af formørkelse IDE?

  • Opret en klasse her, jeg har navngivet min klasse som Vigtigste
  • Højreklik nu og klik på Kør konfiguration
  • Vælge Argumenter Tab og indtast værdi under Programmer Argumenter fanen
  • Indtast enhver værdi, jeg har skrevet Hej Verden at adskille to argumenter, jeg har brugt hvidt rum.
  • Klik på ansøge og derefter videre Løb
  • Din produktion vil være

//Produktion:

Hej Verden

Her er ting at huske på, at det hvide rum er at adskille to argumenter med hinanden og ikke til repræsentationsformål.

Dette var grundlæggende brug af kommandolinjeargumenter til mere avanceret brug af CLA, vi kan bruge det i Diagnostic Management til Hot-Spot Virtual Machine. Virtual Machine kan også forsynes med kommandolinjeargumenter ved hjælp af Virtual Machine Option til Hot-Spot Diagnostic, der kan bruges, når du vil påberåbe sig en bønne fra serverforbindelse. Det er stof til eftertanke!

Med dette kommer vi til slutningen af ​​denne artikel 'Kommandolinjeargumenter i Java'. Jeg håber, du har forstået kommandolinjeargumenterne i Java og dens implementering gennem nogle eksempler i realtid.

Nu hvor du har forstået det Kommandolinjeargumenter grundlæggende gennem denne artikel tjek af Edureka, et pålideligt online læringsfirma med et netværk på mere end 250.000 tilfredse elever spredt over hele kloden. Edurekas Java J2EE- og SOA-kurser er designet til studerende og fagfolk, der ønsker at være Java-udvikler. Kurset er designet til at give dig et forspring i Java-programmering og træne dig til både kerne- og avancerede Java-koncepter sammen med forskellige Java-rammer som Hibernate & Forår .

Har du et spørgsmål til os? Nævn det i kommentarfeltet i denne 'Kommandolinjeargumenter i Java' -artiklen, og vi vender tilbage til dig så hurtigt som muligt.