జావాలో HashMaps కోసం getOrDefault పద్ధతి ఏమిటి?
getOrDefault() పద్ధతికి హెడర్ ఏమిటి?
getOrDefault పద్ధతికి సంబంధించిన సాధారణ హెడర్ క్రింది విధంగా నిర్వచించబడింది.hashMap.getOrDefault(Object key, Object defaultValue)
పారామితులు ఆమోదించబడ్డాయి
మెథడ్ హెడర్ రెండు ఆర్గ్యుమెంట్లను తీసుకుంటుంది. వారు క్రింద వారి డేటా రకాలతో పాటు నమోదు చేయబడ్డారు.- మొదటిది ఆబ్జెక్ట్ రకం యొక్క పేర్కొన్న కీ .
- ఇతర ఆబ్జెక్ట్ రకం పరామితి డిఫాల్ట్ విలువ ఆబ్జెక్ట్ కీ కోసం మెథడ్ ఆర్గ్యుమెంట్గా పాస్ చేయబడింది.
getOrDefault() పద్ధతి యొక్క పని
మీరు క్రింది రెండు సాధారణ దశల్లో getOrDefault() పద్ధతి యొక్క పనిని అర్థం చేసుకోవచ్చు .- getOrDefault (కీ, డిఫాల్ట్ వాల్యూ ) HashMap లోని కీకి సంబంధించిన విలువను పొందడానికి రూపొందించబడింది .
- కీతో అనుబంధించబడిన విలువ ఉంటే , ఆ విలువ తిరిగి ఇవ్వబడుతుంది. మరోవైపు, విలువ అందుబాటులో లేకుంటే, ఈ పద్ధతికి పరామితిగా ఆమోదించబడిన డిఫాల్ట్ విలువ తిరిగి ఇవ్వబడుతుంది.
ఉదాహరణ 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 లో అభ్యర్థించిన కీ విలువను పొందడానికి Javaలోని సాధారణ 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 మధ్య వ్యత్యాసాన్ని చూడవచ్చు . అవుట్పుట్లో ముద్రించినట్లుగా, కీ కనుగొనబడకపోతే మొదటి పద్ధతి డిఫాల్ట్ విలువను అందిస్తుంది, రెండోది శూన్యతను అందిస్తుంది.
GO TO FULL VERSION