ఈ వ్యాసంలో, a ఎలా కేటాయించాలో మేము విశ్లేషిస్తాము డిఫాల్ట్ విలువ గోలాంగ్లోని స్ట్రక్ట్ ఫీల్డ్ కోసం.
స్ట్రక్ట్ ఫీల్డ్స్ అంటే ఏమిటి?
మొదట, భావనను అర్థం చేసుకోవడం చాలా అవసరం నిర్మాణ క్షేత్రాలు . ది నిర్మాణ క్షేత్రాలు a ఏర్పడటానికి సమూహం చేయబడిన వేరియబుల్స్ నిర్మాణం వస్తువు. ప్రతి struct ఫీల్డ్ పేరు మరియు డేటా రకాన్ని కలిగి ఉంది. ఉదాహరణకు, ఒక వ్యక్తిని సూచించే నిర్మాణం పేరు, వయస్సు మరియు లింగం వంటి ఫీల్డ్లను కలిగి ఉండవచ్చు.
గోలాంగ్లోని స్ట్రక్ట్ ఫీల్డ్ల కోసం డిఫాల్ట్ విలువలను ఎలా కేటాయించాలి?
సాధారణ విలువలు దీన్ని ఉపయోగించి గోలో స్ట్రక్ట్ ఫీల్డ్ల కోసం కేటాయించవచ్చు:
- డిఫాల్ట్ జీరో విలువలు
- కన్స్ట్రక్టర్లు
- స్ట్రక్ట్ లిటరల్స్
- డిఫాల్ట్ ఫీల్డ్ విలువలు
1: డిఫాల్ట్ జీరో విలువలు
గోలో, స్ట్రక్ట్ ఫీల్డ్లకు డిఫాల్ట్ విలువలను కేటాయించడం దీనితో సాధించవచ్చు సున్నా విలువ ” లక్షణం. ఈ ఫీచర్ స్వయంచాలకంగా '' డిఫాల్ట్ విలువను కేటాయిస్తుంది 0 'లేదా' తప్పుడు ” డేటా రకాన్ని బట్టి ప్రతి ప్రారంభించబడని ఫీల్డ్కి. గో మీ కోసం దీన్ని చేస్తుంది కాబట్టి మీరు స్ట్రక్ట్లోని ప్రతి ఫీల్డ్కు డిఫాల్ట్ విలువలను స్పష్టంగా సెట్ చేయనవసరం లేదని దీని అర్థం.
ప్రతి ఫీల్డ్కు డిఫాల్ట్ విలువలను మాన్యువల్గా సెట్ చేయడానికి సమయం మరియు కృషిని ఇది ఆదా చేస్తుంది కాబట్టి, అనేక ఫీల్డ్లతో పెద్ద నిర్మాణాలతో వ్యవహరించేటప్పుడు ఈ ఫీచర్ ఉపయోగపడుతుంది.
struct ఫీల్డ్ల కోసం డిఫాల్ట్ విలువలను కేటాయించడానికి సున్నా విలువను ఉపయోగించే ఉదాహరణ ఇక్కడ ఉంది:
ప్యాకేజీ ప్రధానదిగుమతి 'fmt'
రకం వ్యక్తి నిర్మాణం {
పేరు స్ట్రింగ్
వయస్సు పూర్ణం
ఎత్తు ఫ్లోట్64
ఇస్మేల్ బూల్
}
ఫంక్ మెయిన్ ( ) {
p1 := వ్యక్తి { పేరు: 'జాన్' , వయస్సు: 30 }
fmt.Println ( p1.పేరు )
fmt.Println ( p1.వయస్సు )
fmt.Println ( p1.ఎత్తు )
fmt.Println ( p1.IsMale )
}
పై కోడ్ ఒక వ్యక్తిని నిర్వచిస్తుంది నిర్మాణం నాలుగు ఫీల్డ్లతో: పేరు, వయస్సు, ఎత్తు మరియు ఇస్మేల్, ఇవన్నీ బూల్ డేటా రకానికి చెందినవి. అప్పుడు, మేము వ్యక్తి తరగతి, p1 యొక్క తాజా ఉదాహరణను తయారు చేస్తాము మరియు ఫీల్డ్ పేర్లు మరియు విలువలను పేర్కొనడానికి struct అక్షరాలను ఉపయోగించడం ద్వారా దాని ఫీల్డ్లలో కొన్నింటిని ప్రారంభిస్తాము. ది డిఫాల్ట్ సున్నా విలువలు ప్రారంభ సమయంలో స్పష్టంగా సెట్ చేయని ఫీల్డ్లు మీరు ఉపయోగించి ఫీల్డ్ల విలువలను ప్రింట్ చేసినప్పుడు ప్రదర్శించబడతాయి fmt.Println .
అవుట్పుట్
2: కన్స్ట్రక్టర్లు
రాయడం ద్వారా a నిర్మాణకర్త struct కోసం ఫంక్షన్, మీరు గోలాంగ్లోని స్ట్రక్ట్ ఫీల్డ్లకు డిఫాల్ట్ విలువలను కూడా ఇవ్వవచ్చు. ది నిర్మాణకర్త ఫంక్షన్ struct యొక్క తాజా ఉదాహరణను సృష్టిస్తుంది మరియు దాని ఫీల్డ్ల కోసం డిఫాల్ట్ విలువలను సెట్ చేస్తుంది. ఈ పద్ధతి ప్రయత్నం మరియు సమయాన్ని ఆదా చేస్తుంది, ప్రత్యేకించి అనేక ఫీల్డ్లతో భారీ నిర్మాణాలతో పరస్పర చర్య చేసినప్పుడు.
a ని ఎలా నిర్వచించాలో ఇక్కడ ఒక ఉదాహరణ ఉంది నిర్మాణకర్త struct కోసం డిఫాల్ట్ ఫీల్డ్ విలువలతో ఫంక్షన్:
ప్యాకేజీ ప్రధానదిగుమతి 'fmt'
రకం వ్యక్తి నిర్మాణం {
స్ట్రింగ్ పేరు
వయస్సు పూర్ణం
చిరునామా స్ట్రింగ్
}
ఫంక్ న్యూ పర్సన్ ( ) * వ్యక్తి {
తిరిగి & వ్యక్తి {
పేరు: 'జాన్ డో' ,
వయస్సు: 30 ,
చిరునామా: '123 ప్రధాన సెయింట్' ,
}
}
ఫంక్ మెయిన్ ( ) {
p := కొత్త వ్యక్తి ( )
fmt.Println ( పే.పేరు, పే.వయస్సు, పే.చిరునామా )
}
పై కోడ్లో, ఎ వ్యక్తి struct నిర్వచించబడింది, అలాగే కొత్త వ్యక్తి() ఫంక్షన్, ఇది తాజా ఉదాహరణను ఉత్పత్తి చేస్తుంది వ్యక్తి ముందుగా నిర్ణయించిన డిఫాల్ట్లతో రూపొందించబడింది. మేము పిలుస్తాము కొత్త వ్యక్తి() లో ప్రధాన () కొత్త వ్యక్తి ఉదాహరణను సృష్టించడానికి డిఫాల్ట్ ఫీల్డ్ విలువలు , మరియు మేము ఆ ఉదాహరణ ఫీల్డ్ల విలువలను ముద్రిస్తాము.
అవుట్పుట్
3: స్ట్రక్ట్ లిటరల్స్
గోలాంగ్లో, మీరు ఉపయోగించి struct ఫీల్డ్ల కోసం డిఫాల్ట్ విలువలను సెట్ చేయవచ్చు అక్షరాలను నిర్మించండి అలాగే. స్ట్రక్ట్ యొక్క కొత్త ఉదాహరణను రూపొందించండి మరియు ప్రారంభించాల్సిన ప్రతి ఫీల్డ్కు విలువలను సెట్ చేయండి. మీరు స్పష్టంగా ప్రారంభించని ఫీల్డ్ల కోసం డిఫాల్ట్ విలువలను సెట్ చేయాలనుకుంటే, మీరు సున్నా-విలువ లక్షణాన్ని ఉపయోగించవచ్చు.
ఎలా ఉపయోగించాలో ఇక్కడ ఒక ఉదాహరణ ఉంది అక్షరాలను నిర్మించండి struct కోసం డిఫాల్ట్ ఫీల్డ్ విలువలను సెట్ చేయడానికి:
ప్యాకేజీ ప్రధానదిగుమతి 'fmt'
రకం వ్యక్తి నిర్మాణం {
స్ట్రింగ్ పేరు
వయస్సు పూర్ణం
చిరునామా స్ట్రింగ్
}
ఫంక్ మెయిన్ ( ) {
p := వ్యక్తి {
పేరు: 'జాన్ డో' ,
వయస్సు: 30 ,
}
fmt.Println ( పే.పేరు, పే.వయస్సు, పే.చిరునామా )
}
పై కోడ్లో, మేము aని నిర్వచించాము వ్యక్తి ఈ ఉదాహరణలో struct మరియు దాని ఫీల్డ్ల కోసం struct లిటరల్ మరియు డిఫాల్ట్ విలువలను ఉపయోగించి దాని యొక్క కొత్త ఉదాహరణను సృష్టించండి. ఒక కొత్త వ్యక్తి ఉదాహరణకు కొన్ని ఫీల్డ్ విలువలతో మెయిన్()లో సృష్టించబడింది మరియు మరికొన్ని ఖాళీగా ఉన్నాయి. అప్పటినుంచి చిరునామా ఫీల్డ్ ప్రారంభించబడలేదు, ఇది ఈ ఫీల్డ్కు డిఫాల్ట్ విలువ అయిన ఖాళీ స్ట్రింగ్ను అందుకుంటుంది. చివరగా, మేము వ్యక్తి ఉదాహరణ యొక్క ఫీల్డ్ విలువలను ముద్రిస్తాము.
అవుట్పుట్
4: డిఫాల్ట్ ఫీల్డ్ విలువలు
కేటాయిస్తోంది సాధారణ విలువలు కు నిర్మాణ క్షేత్రాలు ఇన్ గో అనేది సరళమైన ప్రక్రియ. ది డిఫాల్ట్ విలువ ఒక struct ఫీల్డ్ కోసం సింటాక్స్ ఉపయోగించి సెట్ చేయవచ్చు ఫీల్డ్ పేరు:డిఫాల్ట్ విలువ . ఉదాహరణకు, కింది నిర్మాణ నిర్వచనాన్ని పరిగణించండి:
రకం వ్యక్తి నిర్మాణం {పేరు స్ట్రింగ్
వయస్సు పూర్ణ
జెండర్ స్ట్రింగ్
}
కేటాయించడానికి సాధారణ విలువలు ఈ నిర్మాణం యొక్క ఫీల్డ్లకు, మేము ఈ క్రింది వాక్యనిర్మాణాన్ని ఉపయోగించవచ్చు:
p := వ్యక్తి {పేరు: 'జాన్ డో' ,
వయస్సు: 30 ,
లింగం: 'పురుషుడు' ,
}
పై ఉదాహరణలో, మేము కేటాయించాము సాధారణ విలువలు వ్యక్తి నిర్మాణం యొక్క క్షేత్రాలకు. ప్రారంభ సమయంలో మనం ఏదైనా విలువలను వదిలివేస్తే, ది డిఫాల్ట్ విలువ బదులుగా ఉపయోగించబడుతుంది. ఉదాహరణకు, మనం వ్యక్తి వస్తువును ఇలా ప్రారంభించినట్లయితే:
p := వ్యక్తి {పేరు: 'జేన్ డో' ,
}
ఫలితంగా వచ్చిన వ్యక్తి వస్తువు కలిగి ఉంటుంది సాధారణ విలువలు వయస్సు మరియు లింగం ఫీల్డ్ల కోసం, అవి వరుసగా 0 మరియు ఖాళీ స్ట్రింగ్.
పై ప్రక్రియను వివరించే పూర్తి కోడ్ ఇక్కడ ఉంది:
ప్యాకేజీ ప్రధానదిగుమతి 'fmt'
రకం వ్యక్తి నిర్మాణం {
పేరు స్ట్రింగ్
వయస్సు పూర్ణం
జెండర్ స్ట్రింగ్
}
ఫంక్ మెయిన్ ( ) {
p1 := వ్యక్తి {
పేరు: 'జాన్ డో' ,
వయస్సు: 30 ,
లింగం: 'పురుషుడు' ,
}
fmt.Println ( p1 )
p2 := వ్యక్తి {
పేరు: 'జెరెమీ' ,
}
fmt.Println ( p2 )
}
పై ఉదాహరణలో, మేము మూడు ఫీల్డ్లను కలిగి ఉన్న వ్యక్తి నిర్మాణాన్ని రూపొందిస్తాము: పేరు, వయస్సును సూచించే పూర్ణాంశం మరియు లింగం, లింగాన్ని సూచించే స్ట్రింగ్. స్ట్రక్ట్ ఇనిషియలైజేషన్ సింటాక్స్ రెండు పర్సన్ ఇన్స్టాన్స్లను నిర్మించడానికి ఉపయోగించబడుతుంది, p1 మరియు p2. పేరు కోసం 'జాన్ డో', వయస్సు కోసం '30' మరియు లింగం కోసం 'పురుషుడు' అనే విలువలతో p1 ప్రారంభించబడింది, ఇవి స్పష్టంగా అందించబడిన అన్ని విలువలు. మేము వయస్సు మరియు లింగం కోసం విలువలను అందించనందున, డిఫాల్ట్ విలువలు 0 మరియు ఖాళీ స్ట్రింగ్ వాటికి కేటాయించబడతాయి. p2 ప్రారంభంలో అందించబడిన పేరు ఫీల్డ్తో ప్రారంభించబడింది.
అవుట్పుట్
ముగింపు
కేటాయిస్తోంది సాధారణ విలువలు ఈ భాషతో ప్రోగ్రామింగ్లో గో అనేది ఒక ముఖ్యమైన అంశం. సృష్టించబడిన ప్రతి స్ట్రక్ట్ ఇన్స్టాన్స్కి డిఫాల్ట్ డేటా కేటాయించబడిందని నిర్ధారించడానికి ఇది సహాయపడుతుంది. పైన వివరించిన పద్ధతుల్లో దేనినైనా ఉపయోగించడం ద్వారా, డెవలపర్లు సెట్ చేయవచ్చు సాధారణ విలువలు సమర్ధవంతంగా struct ఫీల్డ్లు.