Isi kandungan:
Video: #2 Terowongan Wilhelmina - Kalipucang, Pangandaran 2024
Pada satu masa, kebanyakan pengaturcara Java menggunakan antara muka pembangunan berasaskan teks. Mereka menaip perintah dalam tetingkap yang kelihatan biasa, biasanya dengan teks putih pada latar belakang hitam.
Bagaimana membosankan!Tetingkap yang kelihatan biasa berjalan dengan pelbagai nama, bergantung kepada jenis sistem operasi yang anda gunakan. Di Windows, tetingkap teks jenis ini ialah command prompt window. Pada Macintosh dan Linux, tetingkap ini ialah terminal. Sesetengah versi Linux dan UNIX memanggil tetingkap ini shell.
Bagaimanapun, pada zaman purba, anda boleh menulis sebuah program yang menyedapkan maklumat tambahan apabila anda menaip perintah untuk melancarkan program tersebut.
Apabila anda melancarkan MakeRandomNumsFile, anda menaip beberapa maklumat tambahan.Dalam imej di atas, jenis programmer java MakeRandomNumsFile untuk menjalankan program
MakeRandomNumsFile
. Tetapi programmer berikut java MakeRandomNumsFile dengan dua maklumat tambahan: MyNumberedFile. txt dan 5 . Apabila program
MakeRandomNumsFile
dijalankan, program menyebarkan dua maklumat tambahan dan menggunakannya untuk melakukan apa sahaja yang perlu dilakukan oleh program. Program ini menyusup
MyNumberedFile. txt 5
, tetapi pada masa yang sama programmer mungkin menaip SomeStuff 28 atau BunchONumbers 2000 . Maklumat tambahan boleh berbeza setiap kali anda menjalankan program ini.
Persoalan seterusnya ialah, "Bagaimana program Java tahu bahawa ia sepatutnya menerkam maklumat tambahan setiap kali ia dijalankan? "Sejak pertama kali anda mula bekerja dengan Java, anda telah melihat
String args []
perniagaan dalam tajuk setiap
utama
kaedah. Nah, sudah tiba masanya anda mengetahui apa yang berlaku. Parameter
args []
adalah pelbagai nilai
String
. Nilai
String
ini dipanggil argumen baris.
Beberapa pengaturcara menulis
static void utama utama (String args [999]) dan pengaturcara lain menulis
[]
args) Either way, args
adalah array
String
nilai.
Menggunakan argumen baris perintah dalam program Java
Kod kecil ini menunjukkan cara untuk menggunakan argumen baris perintah.
Ini adalah bagaimana anda menghasilkan fail nombor
java import. util. Rawak;
java import. io. PrintStream;
java import. io. IOException;
public class MakeRandomNumsFile {
public static void main (
String args []
) melemparkan IOException { Generator rawak = Random Random (); jika (args.panjang <2) {
System. keluar. println ("Penggunaan: MakeRandomNumsFilename nama fail"); Sistem
. keluar (1);
}
PrintStream printOut = PrintStream baru (args [0]);
int numLines = Integer. parseInt (args [1]);
untuk (int count = 1; hitung <= numLines; hitung ++) {
printOut. println (generator. nextInt (10) + 1);
}
printOut. tutup ();
}
}
Jika program tertentu menjangkakan beberapa hujah baris arahan, anda tidak boleh memulakan program yang berjalan dengan cara yang sama anda akan memulakan kebanyakan program biasa yang lain. Cara anda memberi hujah hujah arahan kepada program bergantung pada IDE yang anda gunakan - Eclipse, NetBeans, atau apa sahaja. Allmycode. com mempunyai arahan untuk memberi hujah kepada program menggunakan pelbagai IDE.
Apabila kod tersebut mula berjalan, array
args
mendapat nilai-nilainya. Dengan larian yang ditunjukkan dalam imej di atas, komponen array
args [0]
secara automatik mengambil nilai
"MyNumberedFile. Txt"
, dan
args [1]
secara automatik menjadi
"5"
. Jadi pernyataan tugasan program akhirnya mempunyai makna berikut:
PrintStream printOut = PrintStream baru ("MyNumberedFile txt");
int numLines = Integer. parseInt ("5");
Program ini membuat fail bernama
MyNumberedFile. txt
dan tetapkan
numLines
ke
5
. Jadi kemudian dalam kod, program secara rawak menghasilkan lima nilai dan meletakkan nilai tersebut ke dalam
MyNumberedFile. txt
. Satu program dijalankan memberikan anda ini.
Selepas menjalankan kod tersebut, di mana anda boleh mencari fail baru (
MyNumberedFile txt
) pada cakera keras anda? Jawapannya bergantung kepada banyak perkara yang berbeza. Jika anda menggunakan IDE dengan program yang dibahagikan kepada projek, maka fail baru ada di dalam folder projek. Satu cara atau yang lain, anda boleh menukar Listing 11-7 untuk menentukan nama laluan penuh - nama seperti
"c: \ Pengguna \ MyName \ Dokumen \ MyNumberedFile. Txt"
atau
"/ Pengguna / MyName / Dokumen / MyNumberedFile. Txt"
.
Di Windows, nama fail fail mengandungi aksara backslash. Dan di Jawa, apabila anda ingin menandakan backslash di dalam String yang disebutkan dua literal, anda menggunakan backslash ganda. Itulah sebabnya "c: \ Pengguna \ MyName \ Dokumen \ MyNumberedFile. txt "mengandungi pasang backslashes. Sebaliknya, laluan fail dalam sistem operasi Linux dan Macintosh mengandungi slash ke hadapan. Untuk menandakan slash ke hadapan dalam String Java, gunakan hanya satu slaid ke hadapan.
Perhatikan bagaimana setiap hujah baris perintah adalah nilai
String
. Apabila anda melihat
args [1]
, anda tidak melihat nombor 5 - anda melihat rentetan
"5"
dengan aksara angka di dalamnya. Malangnya, anda tidak boleh menggunakan
"5"
untuk melakukan sebarang pengiraan. Untuk mendapatkan nilai
int
dari
"5"
, anda perlu memohon kaedah
parseInt
.
Kaedah
parseInt
tinggal di dalam kelas bernama
Integer.
Jadi, untuk memanggil parseInt, anda mendahului nama
parseInt
dengan perkataan Integer. Kelas Integer mempunyai semua jenis kaedah yang berguna untuk melakukan perkara dengan nilai
int
.
Di Jawa, Integer adalah nama kelas, dan int ialah nama jenis primitif (mudah). Kedua-dua perkara berkaitan, tetapi mereka tidak sama. Kelas
Integer
mempunyai kaedah dan alat lain untuk menangani nilai
int
.
Memeriksa hujah baris perintah yang betul
Apa yang berlaku jika pengguna membuat kesilapan? Bagaimana jika pengguna terlupa mengetik nombor
5
pada baris pertama w yang anda lancarkan MakeRandomNumsFile ?
Kemudian komputer memberikan
"MyNumberedFile. Txt"
ke
args [0]
, tetapi tidak memberikan apa-apa ke
args [1]
. Ini tidak baik. Sekiranya komputer tersebut mencapai kenyataan
int numLines = Integer. parseInt (args [1]);
program crash dengan tidak bersahabat
ArrayIndexOutOfBoundsException
.
Apa yang kamu lakukan tentang perkara ini? Anda menyemak panjang array
args
. Anda membandingkan
args. panjang
dengan
2
. Sekiranya
args array
mempunyai kurang daripada dua komponen, anda memaparkan mesej pada skrin dan keluar dari program.
Kod ini memberitahu anda cara untuk menjalankannya.
Walaupun pemeriksaan
, kod itu masih tidak menjadi bukti kemalangan. Sekiranya pengguna mengetik lima daripada 5, program tersebut akan mengambil nosedive dengan
NumberFormatException
. Hujah arahan baris kedua tidak boleh menjadi perkataan. Hujah harus menjadi nombor (dan bilangan keseluruhan, pada itu). Anda boleh menambah pernyataan untuk membuat kod lebih tahan peluru.
Apabila anda bekerja dengan argumen baris arahan, anda boleh memasukkan nilai
String
dengan ruang kosong di dalamnya. Cukup masukkan nilai dalam tanda petikan berganda. Sebagai contoh, anda boleh menjalankan kod di atas dengan hujah
"Fail Big Fat saya. Txt" 7
.