CodeGym /Java Blog /சீரற்ற /ஜாவாவில் HashMap getOrDefault முறை
John Squirrels
நிலை 41
San Francisco

ஜாவாவில் HashMap getOrDefault முறை

சீரற்ற குழுவில் வெளியிடப்பட்டது

ஜாவாவில் ஹாஷ்மேப்களுக்கான getOrDefault முறை என்ன?

GetOrDefault முறையானது, HashMap இல் குறிப்பிடப்பட்ட விசைக்கு மேப் செய்யப்பட்ட மதிப்பை வழங்குகிறது . அந்த விசை இல்லை என்றால், ஒரு இயல்புநிலை மதிப்பு வழங்கப்படும்.
java.util.HashMap வகுப்பு , இயல்புநிலை மதிப்பைக் கடந்து செல்வதற்கான கூடுதல் சலுகையை வழங்க getOrDefault முறையுடன் வருகிறது . இயல்புநிலை மதிப்பு பல்வேறு சூழ்நிலைகளில் வெவ்வேறு நோக்கங்களுக்காக பயன்படுத்தப்படலாம். அதன் பயன்பாடு மற்றும் எளிமையான பெறு முறையுடன் ஒப்பிடுவது பின்னர் இடுகையில் விளக்கப்படும்.

getOrDefault() முறைக்கான தலைப்பு என்ன?

getOrDefault முறைக்கான வழக்கமான தலைப்பு பின்வருமாறு வரையறுக்கப்படுகிறது.

hashMap.getOrDefault(Object key, Object defaultValue)

அளவுருக்கள் கடந்துவிட்டன

முறை தலைப்பு இரண்டு வாதங்களை எடுக்கும். கீழே உள்ள தரவு வகைகளுடன் அவை பட்டியலிடப்பட்டுள்ளன.
  1. முதலாவது பொருள் வகையின் குறிப்பிட்ட விசை .
  2. மற்ற ஆப்ஜெக்ட் வகை அளவுரு இயல்புநிலை மதிப்பானது , பொருள் விசையை முறை வாதமாக அனுப்பியது.

getOrDefault() முறையின் வேலை

பின்வரும் இரண்டு எளிய படிகளில் getOrDefault() முறையின் செயல்பாட்டை நீங்கள் புரிந்து கொள்ளலாம் .
  1. getOrDefault (key, defaultValue) ஆனது HashMap இல் உள்ள விசையுடன் தொடர்புடைய மதிப்பைப் பெற வடிவமைக்கப்பட்டுள்ளது .
  2. விசையுடன் தொடர்புடைய மதிப்பு இருந்தால் , அந்த மதிப்பு வழங்கப்படும். மறுபுறம், மதிப்பு கிடைக்கவில்லை என்றால், இந்த முறைக்கு ஒரு அளவுருவாக அனுப்பப்பட்ட defaultValue திரும்பும்.

எடுத்துக்காட்டு 1


import java.util.HashMap;

public class Driver1{

	public static void main(String[] args) {

		// Declare a HashMap
		HashMap weekDays = new HashMap<>();

		// Add data to the HashMap
        weekDays.put("Monday", "Working Day");
        weekDays.put("Tuesday", "Working Day");
        weekDays.put("Wednesday", "Working Day");
        weekDays.put("Thursday", "Working Day");
        weekDays.put("Friday", "Working Day");
        weekDays.put("Saturday", "Off Day");
        weekDays.put("Sunday", "Off Day");
        
        // Print the data in the HashMap
        System.out.println("Working Schedule : " + weekDays + "\n");
              
  
        // Check if the given key is present in the Map
        // IF yes, its value will be returned
        String sunday = weekDays.getOrDefault("Sunday", "No Announcements Yet.");
        System.out.println("Is Sunday a working day?  " + sunday);
        
        // IF not, the default value passed will be returned
        String christmas = weekDays.getOrDefault("Christmas", "National Holiday");
        System.out.println("Is Christmas a working day?  " + christmas);

        // Key not present in the HashMap
        // Default Value returned
        String easter = weekDays.getOrDefault("Easter", "National Holiday");
        System.out.println("Is Easter a working day?  " + easter);
	}

}

வெளியீடு

வேலை அட்டவணை : {திங்கள் = வேலை நாள், வியாழன் = வேலை நாள், வெள்ளி = வேலை நாள், ஞாயிறு = விடுமுறை நாள், புதன் = வேலை நாள், செவ்வாய் = வேலை நாள், சனி = விடுமுறை நாள்} ஞாயிறு வேலை நாளா? விடுமுறை நாள் கிறிஸ்துமஸ் வேலை நாளா? தேசிய விடுமுறை ஈஸ்டர் ஒரு வேலை நாளா? தேசிய விடுமுறை

getOrDefault() மற்றும் get() முறையை ஏன் பயன்படுத்தக்கூடாது?

HashMap இல் கோரப்பட்ட விசையின் மதிப்பைப் பெற ஜாவாவில் உள்ள எளிய get() முறை பயன்படுத்தப்படுகிறது . விசை கண்டுபிடிக்கப்பட்டால், மதிப்பு திரும்பும். விசை கிடைக்கவில்லை என்றால், "பூஜ்ய" திரும்பும். இயல்புநிலை மதிப்பு திரும்பும் என எதிர்பார்க்கப்படும் போது எளிய பெறுதல் முறையை விட getOrDefault () முறை விரும்பப்படுகிறது . உங்கள் புரிதலுக்கு ஒரு எளிய உதாரணம்.

உதாரணம் 2


import java.util.HashMap;
public class Driver2{

	public static void main(String[] args) {

	  HashMap<Object, Boolean> holidays = new HashMap<>();

	  // Add data to the HashMap
        holidays.put("Saturday",  true);
        holidays.put("Sunday", true);
        
        // Print the data in the HashMap
        System.out.println("Holidays: " + holidays + "\n");

        // Key not present, default value returned
        Object christmas = holidays.getOrDefault("Christmas", true);
        System.out.println("Is Christmas a holiday?  " + christmas);
        
        // Key not present, null returned
        christmas = holidays.get("Christmas");
        System.out.println("Is Christmas a holiday?  " + christmas);
	}
}

வெளியீடு

விடுமுறை நாட்கள்: {ஞாயிறு=உண்மை, சனிக்கிழமை=உண்மை} கிறிஸ்துமஸ் விடுமுறையா? உண்மை கிறிஸ்துமஸ் விடுமுறையா? ஏதுமில்லை
getOrDefault மற்றும் get method இடையே உள்ள வித்தியாசத்தை நீங்கள் பார்க்கலாம் . வெளியீட்டில் அச்சிடப்பட்டுள்ளபடி, விசை காணப்படாவிட்டால், முதல் முறையானது இயல்புநிலை மதிப்பை வழங்குகிறது, பிந்தையது பூஜ்யமாக இருக்கும்.

முடிவுரை

இந்த இடுகையின் முடிவில், நீங்கள் HashMap இன் getOrDefault() முறையைப் பற்றி நன்கு அறிந்திருக்க வேண்டும். நீங்கள் பயிற்சி மூலம் கற்றுக்கொள்ள அறிவுறுத்தப்படுகிறீர்கள். வழியில் சிக்கிக்கொண்டால், இந்த இடுகையை மீண்டும் சரிபார்க்கவும். அதுவரை பயிற்சி செய்து வளருங்கள்!
கருத்துக்கள்
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION