Paglawak ng Output sa Java

Ang mga programang Java na walang isang graphic na interface ng gumagamit ay gumagamit ng linya ng utos ng isang computer upang makipag-ugnay sa gumagamit. Mahalaga na ang output ng linya ng utos ng programa ay maayos na nai-format at may puwang upang maunawaan ito ng gumagamit. Maaari mong puwang ang iyong output nang manu-mano sa mga loop o sa pamamagitan ng klase ng Formatter ng Java.

Monospaced Font

Ang mga monospaced na font ay mga font kung saan ang bawat titik ay tumatagal ng parehong dami ng puwang tulad ng iba pang mga titik sa font. Halimbawa, sa isang monospaced font, ang character na "i" ay tumatagal ng parehong dami ng puwang tulad ng character na "m." Ang pagpapatakbo ng mga programa ng Java sa isang kapaligiran na may mga naka-monospaced na font, tulad ng Windows Command Line o ang Macintosh Terminal, ay nagbibigay-daan sa iyo upang ayusin at mai-format ang iyong teksto sa maayos na mga haligi sa pamamagitan ng pagbibilang ng bilang ng mga character sa bawat hilera.

Manu-manong Paglawak

Ang pinakasimpleng paraan upang maayos na mailagay ang iyong output sa Java ay sa pamamagitan ng pagdaragdag ng manu-manong spacing. Halimbawa, upang maglabas ng tatlong magkakaibang mga integer, "i," "j" at "k," na may puwang sa pagitan ng bawat integer, gamitin ang sumusunod na code:

System.out.println (i + "" + j + "" + k);

Kung ang mga halaga ng "i," "j" at "k" ay 25, 6 at 31, ayon sa pagkakabanggit, ang programa ay naglalabas ng "25 6 31." Pangunahing sagabal ng pamamaraang ito ay ang kawalan ng pagsasaalang-alang sa bilang ng mga character sa bawat integer. Kung mag-print ka ng tatlong mga hilera ng pantay na spaced na mga haligi, ang pangalawang haligi ay hindi magiging pareho lapad ng unang dalawa. Kung ang susunod na hilera ay nagtataglay ng mga halagang 6, 8, at 2, ang mga haligi ay ganap na maaalis.

Formatter Spacing

Pinapayagan ka ng klase ng Formatter ng Java na mag-format ng data bago ito output. Sa Formatter, maaari mong tukuyin ang maximum na lapad ng isang halaga, at ang Formatter pagkatapos ay awtomatikong pads ang halaga ng walang laman na mga puwang upang matiyak na ito ay ang parehong lapad. Kung naglalabas ka ng maraming halaga na may parehong mga pagpipilian sa pag-format, maaari mong matiyak na kukunin nila ang parehong puwang sa linya ng output. Ang paglabas ng naka-format na segment ng teksto ay simple - sa halip na gamitin ang "System.out.print ()," gamitin ang "System.out.format ()." Ang pamamaraan ng format ay tumatagal ng dalawang mga input sa halip na ang solong pag-input na ginagamit ng pamamaraang pag-print. Ang unang input ay isang string na kumakatawan sa formatting na dapat mailapat sa output, at ang pangalawang input ay ang output mismo. Upang mai-print ang tatlong mga halaga ng integer na may maximum na tatlong mga character sa bawat isa at isang solong puwang sa pagitan, gamitin ang sumusunod na code:

System.out.format ("% 4d", i); System.out.format ("% 3d", j); System.out.format ("% 3d", k); System.out.println ();

Ang "% 4" sa unang seksyon ng format string ay nagpapahiwatig na ang programa ay dapat gumamit ng apat na character upang mai-print ang bawat integer. Kung ang integer ay dalawang character lamang ang haba, ang dalawa pang character ay magiging blangko. Ang "d" sa format string ay nagpapahiwatig na ang halaga ng output ay isang decimal integer. Ang huling linya ng code na "System.out.println ()" ay naglilipat ng cursor sa susunod na linya ng code.

Loop Spacing

Ang klase sa Pag-format ay nangangailangan ng malawak na kaalaman sa mga string na ginamit upang tukuyin ang format ng output. Gayunpaman, maaari mong gamitin sa halip ang isang kumbinasyon ng mga loop upang makamit ang mas kumplikadong spacing nang hindi nangangailangan ng mga kumplikadong mga string ng format. Ang mga loop ay partikular na kapaki-pakinabang kapag sinusubukan upang makamit ang kahit spacing sa pagitan ng maraming mga string. Halimbawa, maaari kang kumuha ng dalawang mga arrays ng string at ipakita ang kanilang mga nilalaman sa dalawang parallel na haligi gamit ang dalawang mga loop. Ang unang loop ay tumatakbo sa parehong mga arrays at hahanapin ang haba ng pinakamahabang string sa alinman sa array. Ang pangalawang loop ay tumatakbo muli sa mga arrays. I-print nito ang string mula sa unang array at pagkatapos ay binabawas ang haba ng unang string mula sa haba ng pinakamahabang string sa alinman sa array upang malaman kung gaano karaming mga puwang ang kailangan nitong ilagay bago ang susunod na haligi. Pagkatapos ay nai-print ng programa ang bilang ng mga puwang na may mga sumusunod na pugad na loop:

para sa (int i = 0; i <numSpaces; i ++) {System.out.print (""); }

Matapos i-print ang tamang bilang ng mga puwang, nai-print nito ang pangalawang string. Lumilikha ito ng dalawang pantay na spaced na haligi ng mga string nang hindi nangangailangan ng Formatter ng Java.