วิธีการใช้อาร์กิวเมนต์บรรทัดคำสั่งใน Java



บทความนี้จะช่วยให้คุณมีความรู้โดยละเอียดเกี่ยวกับอาร์กิวเมนต์บรรทัดคำสั่งต่างๆใน Java พร้อมทั้งตัวอย่างเพื่อความเข้าใจที่ดีขึ้น

อาร์กิวเมนต์บรรทัดคำสั่ง ใน Java คือ ที่ ข้อโต้แย้ง ส่งผ่านไปยังโปรแกรมในเวลาที่คุณเรียกใช้ พวกเขาจะถูกเก็บไว้ในรูปแบบสตริงและอาร์เรย์สตริงจะถูกส่งไปยังไฟล์ args [] พารามิเตอร์ ของ main () วิธีการ เราจะเรียนรู้เพิ่มเติมผ่านเอกสารด้านล่างนี้

โปรแกรม Java แรก

คุณต้องการพัฒนาโปรแกรมใน Java เพื่อพิมพ์ 'สวัสดีชาวโลก' บนหน้าจอ. จะพิจารณาขั้นตอนใด





  • ติดตั้ง JDK ไปยังเครื่องของคุณ
  • ชุด เส้นทาง และ classpath ในตัวแปรสภาพแวดล้อมของคุณที่มีอยู่ในเครื่องของคุณ
  • เปิดโปรแกรมแก้ไข (Notepad ในกรณีของ Windows) แล้วพิมพ์โปรแกรมด้านล่าง
คลาส MyFirstJavaProgram {public static void main (String [] args) {System.out.println (“ Hello World”)}}
  • ตอนนี้คุณบันทึกโปรแกรมนี้ไว้ที่ตำแหน่งเฉพาะเช่น C: / javaprograms /
  • คุณเปิดพรอมต์คำสั่ง (ซม ในกรณีของ Windows) ไปที่ตำแหน่งด้านบน

อาร์กิวเมนต์บรรทัดคำสั่งใน Java Edureka รูปภาพ 1

  • คุณรวบรวมโปรแกรมของคุณโดยใช้ไฟล์ javac เครื่องมือสำหรับการรวบรวม MyFirstJavaProgram.java ในพรอมต์ CMD



  • ตอนนี้คุณต้องการเรียกใช้แอปพลิเคชันแรกของคุณดังนั้นเขียน java MyFirstJavaProgram

  • คุณจะสามารถมองเห็นได้ สวัสดีชาวโลก เมื่อคุณกด ป้อน สำคัญ.

อาร์กิวเมนต์บรรทัดคำสั่ง

ไวยากรณ์ ของคำสั่ง java เพื่อเปิดแอปพลิเคชันคือ

Java [ตัวเลือก] คลาสหลัก [args]

ที่นี่ ตัวเลือก คือตัวเลือกบรรทัดคำสั่งเช่น -เธอ, เป็นต้น ชั้นเรียนหลัก คือชื่อของคลาสที่มีเมธอดหลัก โดยเฉพาะคลาสที่คุณต้องการเปิดตัว



สุดท้าย [args] คืออาร์กิวเมนต์ที่ส่งผ่านไปยังเมธอดหลัก ในโปรแกรมของเราเราได้ระบุ String array เป็นพารามิเตอร์ ดังนั้นอาร์กิวเมนต์หลายรายการสามารถส่งผ่านโดยใช้ช่องว่าง

ตามค่าเริ่มต้นแอ็พพลิเคชัน Java สามารถยอมรับอาร์กิวเมนต์จำนวนเท่าใดก็ได้รวมทั้งไม่มีอาร์กิวเมนต์จากบรรทัดคำสั่ง สามารถใช้เพื่อระบุข้อมูลการกำหนดค่าเมื่อไฟล์ ใบสมัคร เปิดตัว นั่นหมายความว่าสมมติว่าเราไม่ทราบรายละเอียดของการกำหนดค่าก่อนที่จะเรียกใช้แอปพลิเคชัน

รายละเอียดดังกล่าวสามารถนำมาใช้ซ้ำในแอปพลิเคชันของคุณได้โดยที่ไม่จำเป็นต้องมี ฮาร์ดโค้ด อย่างไรก็ตามข้อมูลการกำหนดค่าสามารถกำหนดเป็นสตริงอักขระหรือในไฟล์ ที่จะขัดขวาง ประสิทธิภาพของแอปพลิเคชัน?

คำตอบคือ, ไม่ . สิ่งนี้จะไม่ขัดขวางประสิทธิภาพของแอปพลิเคชันโดยรวมไม่ว่าในกรณีใด ๆ เนื่องจากเรากำลังอ่านไฟล์คอนฟิกูเรชันพร้อมกันในระหว่างการเริ่มต้นแอปพลิเคชันเท่านั้น ด้วยวิธีนี้คุณไม่ต้องคอมไพล์โค้ดของคุณซ้ำแล้วซ้ำอีก

เป็น java ตาม c

ตัวอย่างเช่นเรามีไฟล์ config.properties ไฟล์ซึ่งมีคุณสมบัติการกำหนดค่าทั้งหมดใน คีย์ - ค่า รูปแบบ. แต่ในฐานะนักพัฒนารุ่นเยาว์เราไม่รู้ด้วยซ้ำว่าไฟล์นี้ถูกเก็บไว้ที่ใด ลูกค้า สถานที่หลังจากที่เราส่งใบสมัคร

สิ่งที่เราสามารถพูดได้ว่าไคลเอนต์จะต้องระบุพา ธ เป็นอาร์กิวเมนต์ไปยังแอปพลิเคชันบนไฟล์ บรรทัดคำสั่ง.

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

เมื่อเปิด MyClass ระบบรันไทม์จะส่งอาร์กิวเมนต์บรรทัดคำสั่งไปยังเมธอดหลักของแอ็พพลิเคชันผ่านอาร์เรย์ของ String ที่นี่จะเป็นพา ธ เต็ม

ลองพิจารณาโปรแกรมง่ายๆในการสาธิตรายการที่สร้างโดยผู้ใช้จากบรรทัดคำสั่งจะถูกพิมพ์เอง

คลาสสาธารณะ MyClass {public static void main (String [] args) {for (String s: args) {System.out.println (s)}}}

ในการรันโปรแกรมนี้ผู้ใช้อาจป้อนข้อมูลดังต่อไปนี้

java MyClass ' ฉันได้สร้างโปรแกรมแรกของฉัน '' นี่มันเจ๋งมาก .”

// เอาต์พุต:

ฉันได้สร้างโปรแกรมแรกของฉัน
นี่มันเจ๋งมาก.

นี่เป็นข้อสังเกตว่าแต่ละสตริงที่อยู่ในเครื่องหมายคำพูดและคั่นด้วยช่องว่างถือเป็นอาร์กิวเมนต์ใหม่ ทุกอาร์กิวเมนต์จะถูกวางไว้บนสาเหตุบรรทัดใหม่ของ println.

ความแตกต่างระหว่างการโอเวอร์โหลดและการแทนที่ใน java

จะเกิดอะไรขึ้นถ้าฉันต้องการให้ Number ส่งผ่านเป็นอาร์กิวเมนต์บรรทัดคำสั่ง

เพื่อให้สามารถอ่านตัวเลขเราต้องแยกวิเคราะห์ อาร์กิวเมนต์บรรทัดคำสั่งที่เป็นตัวเลข . เนื่องจาก java ใช้อาร์เรย์ของ Strings เป็นอาร์กิวเมนต์สำหรับเมธอดหลักเท่านั้น ดังนั้นเราต้องแปลงสตริงอาร์กิวเมนต์ที่แสดงถึงตัวเลขเช่น“ 10” เป็นค่าตัวเลข

ลองดูตัวอย่างโดยการสร้างโปรแกรม

class 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 (“ อาร์กิวเมนต์” + args [0] +“ ต้องเป็นจำนวนเต็ม”) System.exit (1)} System.out.println (“ Square is” + firstArg * firstArg)}}}

ในการเรียกใช้แอปพลิเคชันนี้เราใช้บรรทัดด้านล่าง

java SquareCalculator 10

// เอาต์พุต:

สแควร์คือ 100

อาร์กิวเมนต์บรรทัดคำสั่งใน IDE

ความงามอาศัยวิธีการแยกวิเคราะห์ Int ในคลาสจำนวนเต็ม ทุกคลาส Number เช่น Integer, Float, Double และอื่น ๆ มี แยกวิเคราะห์ XXX วิธีการที่แปลง String เป็นวัตถุตามลำดับประเภท

php วิธีการพิมพ์อาร์เรย์

อย่างที่เราทราบกันดีว่าอาร์เรย์เริ่มต้นดัชนีด้วยศูนย์ ดังนั้น args [0] เป็นดัชนีแรกในนี้ สตริง [] อาร์เรย์ซึ่งนำมาจากคอนโซล ในทำนองเดียวกัน args [1] เป็นอันดับสอง args [2] เป็นองค์ประกอบที่สามและอื่น ๆ

เมื่อเปิดแอปพลิเคชันไฟล์ เวลาทำงาน ระบบส่งอาร์กิวเมนต์บรรทัดคำสั่งไปยังเมธอดหลักของแอปพลิเคชันผ่านอาร์เรย์ของสตริง

เราจะส่งผ่านอาร์กิวเมนต์บรรทัดคำสั่งโดยใช้ไฟล์ eclipse IDE?

  • สร้างชั้นเรียนที่นี่ฉันตั้งชื่อชั้นเรียนเป็น หลัก
  • ตอนนี้คลิกขวาและคลิกที่ เรียกใช้ Configuration
  • เลือก อาร์กิวเมนต์ แท็บและป้อน มูลค่า ภายใต้ โปรแกรมอาร์กิวเมนต์ แท็บ
  • ป้อนค่าที่ฉันเขียน สวัสดีชาวโลก เพื่อแยกสองอาร์กิวเมนต์ที่ฉันใช้ พื้นที่สีขาว
  • คลิกที่ สมัคร แล้วต่อไป วิ่ง
  • ผลลัพธ์ของคุณจะเป็น

// เอาต์พุต:

สวัสดีชาวโลก

สิ่งที่ควรทราบต่อไปนี้คือพื้นที่สีขาวคือการแยกอาร์กิวเมนต์สองตัวเข้าด้วยกันไม่ใช่เพื่อวัตถุประสงค์ในการเป็นตัวแทน

นี่คือการใช้อาร์กิวเมนต์บรรทัดคำสั่งขั้นพื้นฐานสำหรับการใช้งาน CLA ขั้นสูงที่เราสามารถใช้ในการจัดการการวินิจฉัยสำหรับ Hot-Spot Virtual Machine เครื่องเสมือนยังสามารถจัดเตรียมอาร์กิวเมนต์บรรทัดคำสั่งโดยใช้ Virtual Machine Option สำหรับ Hot-Spot Diagnostic ที่อาจใช้เมื่อคุณต้องการเรียกใช้ bean ใด ๆ จากการเชื่อมต่อเซิร์ฟเวอร์ นั่นคืออาหารสำหรับความคิด!

ด้วยเหตุนี้เราจึงมาถึงตอนท้ายของบทความ 'อาร์กิวเมนต์บรรทัดคำสั่งใน Java' ฉันหวังว่าคุณจะเข้าใจอาร์กิวเมนต์บรรทัดคำสั่งใน Java และการใช้งานผ่านตัวอย่างแบบเรียลไทม์

ตอนนี้คุณเข้าใจแล้ว อาร์กิวเมนต์บรรทัดคำสั่ง ข้อมูลเบื้องต้นเกี่ยวกับบทความนี้โปรดดูไฟล์ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ซึ่งมีเครือข่ายผู้เรียนที่พึงพอใจมากกว่า 250,000 คนกระจายอยู่ทั่วโลก หลักสูตรฝึกอบรมและการรับรอง Java J2EE และ SOA ของ Edureka ได้รับการออกแบบมาสำหรับนักเรียนและผู้เชี่ยวชาญที่ต้องการเป็น Java Developer หลักสูตรนี้ออกแบบมาเพื่อให้คุณเริ่มต้นการเขียนโปรแกรม Java และฝึกอบรมแนวคิด Java ทั้งหลักและขั้นสูงพร้อมกับกรอบงาน Java ต่างๆเช่น Hibernate & ฤดูใบไม้ผลิ .

มีคำถามสำหรับเรา? พูดถึงในส่วนความคิดเห็นของบทความ 'ข้อโต้แย้งบรรทัดคำสั่งใน Java' และเราจะติดต่อกลับโดยเร็วที่สุด