"Stenograf" usulini yaratish mumkinmi?

(Faqat bitta boshliq, agar mening metodikamning bir qismi 100% to'g'ri bo'lmasa, men hali ham talabalik qilyapman, shuning uchun meni kechiring.)

Maktab bo'yicha ko'plab loyihalarimda System.out.print ("text") ni ishlatishim kerak. sop ("text") kabi bir narsa qila oladigan va bir xil ta'sirga ega bo'lish uchun alohida usulni yaratishim mumkinmi?

0
Albatta. Funktsiyani yaratish.
qo'shib qo'ydi muallif ceejayoz, manba
Yangi usul yozish - bu qo'shimcha ish. Agar siz boshqa ma'lumotlardan foydalansangiz, javoblardagi barcha usullar muvaffaqiyatsiz bo'ladi. Bu barcha istisnolar allaqachon Java System va PrintStream sinflari tomonidan ko'rib chiqiladi. G'ildirakni kashf qilish vaqtini behuda sarflamang.
qo'shib qo'ydi muallif Maverick, manba
Maktabni tugatgandan so'ng dasturiy ta'minotni professional ishlab chiquvchi bo'lishni rejalashtirmoqchi bo'lsangiz, Lew Blochning javobini tinglash kerak bo'lgan yagona narsa. Yozib qo'yishning 1½ soniyasini saqlash sizning jamoangizdagi boshqa ishlab chiquvchilarni tushunish va saqlab turish uchun odatdagi vaqtni uch barobar ko'paytirish kerakligini sirli qisqartirish orqasida qoldirishga hojat yo'q.
qo'shib qo'ydi muallif VGR, manba
Lekin bunga nima erishasiz?
qo'shib qo'ydi muallif TDG, manba
StackOverflow-ga xush kelibsiz. Iltimos, Qanday so'rang . Sizda mavjud bo'lgan kodni, nimani kutayotganingizni va nimani ko'rayotganingizni bizga bera olasizmi?
qo'shib qo'ydi muallif Alex, manba

6 javoblar

Bundan tozalovchi yondashuv, statik ravishda import a> usuli:

import static System.out.println;

va uni boshqa usul sifatida foydalaning:

println ("matn");

6
qo'shib qo'ydi
Albatta haqiqat
qo'shib qo'ydi muallif Gonzalo Matheu, manba
Statik ravishda System.out.println import qila olmaysiz, chunki u statik usul emas.
qo'shib qo'ydi muallif Andy Turner, manba

Bunday vaziyatda siz eng yomon ishni amalga oshirishingiz mumkin, chunki ma'lum ma'noda noma'lum ismga ega bo'lgan taniqli va tushunarli chaqiruv o'rnini o'zgartiradi. Nima muammoni hal qilyapsiz? Avtomatik to'ldirish yoki nusxa ko'chirishni yoqishdan siqilgan barmoqlarni qutqarishmi? Yalang'ochlik uchun o'qish mumkin emas.

5
qo'shib qo'ydi
Boshqaruv. Men Java-da josuslik uslubiga ishonaman.
qo'shib qo'ydi muallif Josh Heaps, manba

Haqiqatan ham, bunday usulni bajaring:

public static void printText(String yourText) {
    System.out.println(yourText);
}

Keyinchalik, usulning nomini chaqirib, String parametri sifatida chop etishni istagan matnni berib, uni foydalanishingiz mumkin:

printText("This will print.");
3
qo'shib qo'ydi
Java nomlash qoidalariga rioya qiling.
qo'shib qo'ydi muallif Lew Bloch, manba
Mening yomonligim shu.
qo'shib qo'ydi muallif Ben B, manba

Ha, buning uchun yo'l bor. Siz asosan System.out.println ("...") chaqiruvini o'z ichiga olgan yangi usul yaratishingiz mumkin.

public void log(final String text){
  System.out.println(text);
}

Lekin men shuni qilmaslikni taklif qilaman: yangi usul chaqiruvida (kirish uchun) qo'shimcha qiymatga ega bo'lmagan usul chaqiruvini (System.out.println) encapsulating.

1
qo'shib qo'ydi

Aniq narsa, bo'ladigan narsa. Faqat usul yarating.

public static void sOP(String s)
{
    System.out.print(s);
}
1
qo'shib qo'ydi

Darhaqiqat, haqiqatan ham shunday qilish oson. Buning uchun o'z kodimni ko'rsataman:

public class ExampleQuickOutput{

    public static void out(String text /*The desired output*/){
        System.out.print(text); //Outputs the text sent
    }

    public static void main(String[] args){
        out("Hello World!"); //Call to the method
    }
}

Umid qilamanki bu yordam!

1
qo'shib qo'ydi
Bu erda boshqalar ta'kidlaganidek, bu yaxshi ish emas.
qo'shib qo'ydi muallif Lew Bloch, manba
Agar yordam berilsa, javobni foydali deb belgilashingiz mumkin!
qo'shib qo'ydi muallif Josh Heaps, manba
Ajoyib! Sizga katta rahmat!
qo'shib qo'ydi muallif Cooper McCoy, manba