O‘zbekiston respublikasi axborot texnologiyalari va kommunikatsiyalarni rivojlantirish vazirligi muhammad al
Download 271.22 Kb.
|
416-19 guruh talabasi Yuldoshov Abduraxmon
JavoblarYou can store them in a Map. Then with java < 8: map.put("london", new Runnable() { public void run() { functionA(); } }); Yoki java 8 bilan statik usulni qabul qilsangiz: map.put("london", YourClass::functionA); Yoki bir misol usuli bilan: map.put("london", this::functionA); Barcha uch holatlarda siz faqatgina: Runnable r = map.get(input.toLowerCase()); if (r != null) r.run(); 4 qo'shib qo'ydi 08 Mart 2014 ichida 07:53 muallif assylias manba @quartz Mening tahrirlashga qarang. qo'shib qo'ydi 08 Mart 2014 ichida 08:07, muallif assylias, manba @Sakura no YourClass functionA ning imzosi run ning imzosiga mos kelishi sharti bilan har qanday sinf bo'lishi mumkin, ya'ni static void functionA() funksiyasini qaytaradi. qo'shib qo'ydi 09 Mart 2014 ichida 12:29, muallif assylias, manba
qo'shib qo'ydi 08 Mart 2014 ichida 08:25, muallif Brian Roach, manba Buni sinab ko'rishim mumkin, lekin bu erda to'liqlik uchun get kodini qo'shishingiz mumkin, agar u Java 8da bo'lsa va siz get ni qabul qilsangiz qanday qilib uni chaqirishingiz mumkin? qo'shib qo'ydi 08 Mart 2014 ichida 08:00, muallif sakura, manba @assylias Albatta, hatto Java8 da xuddi shunday, Map va sizning namunangiz YourClass Runnable. To'g'ri? keyin static .. run() statik emasmi? qo'shib qo'ydi 08 Mart 2014 ichida 08:11, muallif sakura, manba Rahmat assylias, Qanday amalga oshirish vazifasi chaqiramiz? qo'shib qo'ydi 08 Mart 2014 ichida 08:05, muallif quartz, manba Bu enum uchun ajoyib imkoniyat:
1 qo'shib qo'ydi 08 Mart 2014 ichida 08:52 muallif OldCurmudgeon manba C ++ da siz std :: map-ni ishlatishingiz mumkin. Kod shu kabi bo'ladi: typedef (void)(*funcPtr)(); //declaring a compatible function pointer std::map myFunctions; myFunctions["london"]=functionA; myFunctions["paris"]=functionB; //etc etc... //calling the function string wantedCity="london"; myFunction[wantedCity](); EDIT: Men C ++-ni teglardan olib tashlaganingizni ko'raman. java shunga o'xshash konteynerga ega bo'lsa, siz uning usullarini qidirishingiz mumkin. 1 qo'shib qo'ydi 08 Mart 2014 ichida 07:55 muallif Yaniv Nikan manba Siz Guava Funktsiyasini bu holda xarakterli qiymat sifatida ishlatishingiz mumkin. Yaxshi yo'l Java polimorfizmidan foydalanish va pastki klassdagi ushbu mantiqni (functionA, functionB) aniqlashi mumkin: public interface City { public void doSomething(); } public class Example { private Map cities; public void run(String param) { cities.get(param).doSomething(); } } Keyin siz shaharga (London, Moskva ...) kerak bo'lgan ko'plab ilovalarni belgilab olasiz va ularning xaritalarini xaritaga qo'shasiz 1 qo'shib qo'ydi 08 Mart 2014 ichida 07:52 muallif hmashlah manba Ha, agar siz usul qiymati qaytarsa, iloji bor. Misol uchun: public SomeReturnType doSomthing(){ return someReturnType; } va sizning xashmangizda quyidagilarni bajaring HashMap hm = new HashMap(); Boolean usulda solishtirganda, ehtimol, eng yaxshi variant. 0 qo'shib qo'ydi 08 Mart 2014 ichida 07:49 muallif Mohammad Najar manba Buning qanday ahamiyatga ega ekanligiga men amin emasman. Men yangi sinf yaratmayapman. Faqat sizning V. kabi qaytib turini (SomeReturnType) belgilash. qo'shib qo'ydi 08 Mart 2014 ichida 07:52, muallif Mohammad Najar, manba O'z sinfingizni yaratishga hojat qolmaydi, va aslida siz ko'rsatgan narsalar mantiqsizdir. Buni Java'da qilishning standart usuli Callable interfeysidan foydalanadi. qo'shib qo'ydi 08 Mart 2014 ichida 07:51, muallif Brian Roach, manba Java Reflection dasturidan foydalanishingiz mumkin. Funktsiya nomini HashMap da saqlang, keyin uni Method.invoke orqali chaqiring. Xulosa Bugungi jamiyat taraqqiyoti insoniyat tafakkurining maxsuli bo’lgan rivojlangan ilm-fan yutuqlariga asoslangan texnika va texnologiyalar bilan bir qatorda, keng ma’noda, axborotlarning muhim ahamiyatga egaligi orqali xam belgilanadi. Faoliyat maqsadlarining turlicha bo’lishi tabiiy ravishda axborotlardan turli maqsadlarda foydalanish asoslariga sabab bo’ladi. Shuning uchun bugungi, axborotlarni saqlash va uzatish tizimlari bir tomondan takomillashib murakkablashgan va ikkinchi tomondan axborotdan foydalanuvchilar uchun keng qulayliklar vujudga kelgan davrda, axborotlarni maqsadli boshqarishning qator muhim masalalari kelib chiqadi. Bunday masalalar qatoriga katta xajmdagi axborotlarning tez va sifatli uzatish xamda qabul qilish, axborotlarni ishonchliligini ta’minlash, axborotlar tizimida axborotlarni begona shaxslardan(keng ma’noda) muxofaza qilish kabi ko’plab boshqa masalalar kiradi. Yuqoridagi keltirilgan asosli muloxazalardan kelib chiqib, axborotlarni asli xolidan o’zgartirilgan xolda, ya’ni shifrlangan xolda, saqlash va uzatish masalalarining muhim ekanligiga shubxa yo’qdir. Xesh funksiyalar asosan ma’lumotning butunliligini ta’minlashda ya’ni axborot xavfsizligini ta’minlashda keng ko’lamda qo’llaniladi. Shuning uchun ham xesh funksiyalarning zamonaviy kriptografiya tutgan o’rni juda muhimdir. Download 271.22 Kb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling