Sevane ruzivo Java Developer uye connoisseur yemafashoni, isu tinowanzo pihwa basa rekugadzira yakasarudzika mhinduro kumatambudziko akaomarara. Rimwe dambudziko rakadai nderekusarudzika kusarudzwa kubva mukuverengera (Enum) muJava. Iwe unogona kunge watofungidzira kuti hapana yakavakirwa-mukati nzira muJava inopa basa iri zvakananga - chinhu chakajairika mumitauro yakaita sePython. Pasinei neizvi, Java inotipa maturusi anodiwa ekutenderera isu pachedu mhinduro.
Enumerations, iwo magamba asina kufarirwa ezvirongwa zvakawanda, anonyanya mhando ine ndima ine yakagadziriswa seti yemaconstants. Kazhinji tinoshuvira kusarudza kukosha kwakasarudzika kubva pane iyi seti. Chinangwa chechinyorwa chino ndechekuratidza maitiro aya.
Kugadzira Random Enum muJava
public static <T extends Enum<?>> T randomEnum(Class<T> clazz){ Random random = new Random(); int x = random.nextInt(clazz.getEnumConstants().length); return clazz.getEnumConstants()[x]; }
Ngatiparadze iyi nzira ye 'randomEnum'. Chekutanga, tinotsanangudza nzira iyi kuti ive generically taipa - izvi zvinoreva kuti inogona kugamuchira enums chero mhando. 'Random' ikirasi inoburitsa nhamba dzepseudorandom, dzatinoshandisa pano kuona index isina kurongeka yekusarudza. Iyi indekisi 'x' int, iyo yakakosha kukosha kwayo inoganhurwa nehukuru hwekuverenga kwedu kana, zvakanyatsojeka, kureba kwehurongwa hweenum constants yedu yakapfuura 'clazz' (Kirasi chinhu).
Mushure mekugadzira 'x', tinodzorera Enum inongogara tichishandisa array indexing neyedu yakangogadzirwa 'x'. Runako rweiyi nzira kuchinjika kwayo - inoshanda nechero kuverenga!
Kunzwisisa Enums muJava
Enum muJava imhando yedata ine yakagadzika seti yemaconstants. Enum vagadziri vanogara vari vega kana kusarudzika, uye iwe unowanzo shandisa Enums kana uine hunhu hwaunoziva kuti hausi kuzochinja, semazuva muvhiki, mafambiro (North, South, East, West), zvichingodaro.
public enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY }
Enum mhando dzine simba zvakanyanya kupfuura zvatinofunga. MuJava, mhando ye enum isimba rakasimba remhando yedhata yechinyakare iyo inotitendera kutsanangura rudzi rwekudzosera kune imwe nzira, separameter kune iyo nzira kana sechinhu chekirasi.
Kushandisa uye Kuchinjika kweJava yedu Method
Iyo 'randomEnum' nzira inoshanda sechinhu chinobatsira kune chero chirongwa cheJava. Simba rayo riri mukuchinjika kwayo - tinogona kudaidza nzira iyi nechero rudzi rweenum uye inodzosa kudzokororwa kweiyo enumeration zvisina tsarukano.
Zvakakosha kutaura kuti kusarongeka kwakagadzirwa nekombuta inyaya inonakidza pachayo, inosanganisira maalgorithms akaomarara uye yakakosha mukuenzanisa uye mukugadzira yakaoma data seti. Yedu 'randomEnum' nzira idiki asi ine simba muenzaniso wekuti Java inosimudzira sei pseudorandomness mubhokisi rayo rakakura rekushandisa.
Mumafashoni, funga nezve yedu 'randomEnum' nzira sechipfeko nhema chidiki chewadhiropu yako yeJava. Seizvo dhirezi diki dema rinoshanda zvinangwa zvakawanda uye rinogona kupfekwa kumusoro kana pasi zvichienderana nechiitiko, nzira yedu ye'randomEnum' inochinjika, inokodzera zvisina musono mune chero chirongwa cheJava paunoda kugadzira zvisina kujairika enum, zvisinei nemamiriro ezvinhu kana enum mhando. .