இந்த வார்த்தையைப் பற்றி கேள்விப்பட்டிருக்கிறீர்களா? 'ஜாவாவில் சரம் பூல்?' சரி, இல்லை என்றால், நீங்கள் சரியான இடத்தில் இறங்கியுள்ளீர்கள். ஜாவாவில் உள்ள சரம் குளம் என்பது சேமிக்கப்பட்டிருக்கும் சரங்களின் குளம் குவியல் நினைவகம். கொஞ்சம் ஆழமாக தோண்டி ஜாவா சரம் குளத்தின் இந்த கருத்தை விரிவாக புரிந்துகொள்வோம்.
இந்த கட்டுரையில் பின்வரும் சுட்டிகள் விவாதிக்கப்படும்:
- ஒரு சரம் உருவாக்குவது எப்படி?
- ஜாவாவில் சரம் பூல் என்றால் என்ன?
- ஜாவாவில் சரம் பூல் எவ்வாறு செயல்படுகிறது?
- ஓட்ட வரைபடம்
- சரம் பூலுக்கான ஜாவா நிரல்
ஆரம்பித்துவிடுவோம்!
முதலில், ஒரு சரம் பொருள் எவ்வாறு சரியாக உருவாக்கப்பட்டது என்பதைப் புரிந்துகொள்வோம்!
ஒரு சரம் உருவாக்குவது எப்படி?
ஜாவாவில் ஒரு சரம் பொருளை உருவாக்க, இரண்டு வழிகள் உள்ளன:
- புதிய ஆபரேட்டரைப் பயன்படுத்துதல். உதாரணத்திற்கு,
சரம் s1 = புதிய சரம் ('ஜோயி')
- ஒரு சரம் நேரடி அல்லது நிலையான வெளிப்பாட்டைப் பயன்படுத்துதல். உதாரணத்திற்கு,
சரம் s1 = 'ஜோயி' (சரம் நேரடி) அல்லது சரம் s1 = 'ஜோ' + 'y' (சரம் நிலையான வெளிப்பாடு)
இப்போது, நான் பேசும் இந்த சரம் பூல் என்ன, ஜாவாவில் ஒரு சரத்தை உருவாக்குவது இது தொடர்பானது. ஒழுங்கீனத்தை குறைக்கிறேன்!
ஜாவாவில் சரம் பூல் என்றால் என்ன?
சரம் பூல் என்பது ஜாவா குவியலில் ஒரு சேமிப்பு பகுதி.
சரம் ஒதுக்கீடு, எல்லாவற்றையும் போல பொருள் ஒதுக்கீடு , நேரம் மற்றும் நினைவகம் ஆகிய இரு நிகழ்வுகளிலும் ஒரு விலையுயர்ந்த விவகாரம் என்பதை நிரூபிக்கிறது. செயல்திறனை அதிகரிக்கவும், நினைவக மேல்நிலை குறைக்கவும் சரம் எழுத்தர்களைத் தொடங்கும்போது ஜே.வி.எம் சில படிகளைச் செய்கிறது. JVM இல் உருவாக்கப்பட்ட சரம் பொருள்களின் எண்ணிக்கையைக் குறைக்க, சரம் வகுப்பு சரங்களின் ஒரு தொகுப்பை வைத்திருக்கிறது.
ஒவ்வொரு முறையும் ஒரு சரம் உருவாக்கப்படும் போது, தி ஜே.வி.எம் முதலில் சரம் நேரடி பூல் சரிபார்க்கிறது. சரம் குளத்தில் ஏற்கனவே சரம் இருந்தால், பூல் செய்யப்பட்ட நிகழ்வுக்கான குறிப்பு திரும்பும். குளத்தில் சரம் இல்லை என்றால், ஒரு புதிய சரம் பொருள் துவங்கி குளத்தில் வைக்கப்படுகிறது.
ஸ்விங் ஜாவாவை எவ்வாறு பயன்படுத்துவது
கோட்பாட்டளவில் கருத்தைக் கற்றுக்கொண்ட பிறகு, எளிய நிகழ்வுகளின் உதவியுடன் படிப்படியாக ஜாவாவில் ஒரு சரம் பூல் எவ்வாறு செயல்படுகிறது என்பதை நான் உங்களுக்கு சொல்கிறேன்!
ஜாவாவில் சரம் பூல் எவ்வாறு செயல்படுகிறது?
இது போன்ற புதிய சரத்தை நீங்கள் உருவாக்கும்போது:
சரம் s1 = “ரேச்சல்”
அதே மதிப்பு சரம் நிலையான குளத்தில் இருக்கிறதா இல்லையா என்பதை JVM தானாகவே சரிபார்க்கிறது.
- ஆம் எனில், அது ஏற்கனவே இருக்கும் மதிப்பை ஆக்கிரமித்துள்ளது.
- இல்லை என்றால், அது தானாகவே ஒரு புதிய சரத்தை உருவாக்கி அதை சரம் குளத்தில் சேர்க்கிறது.
இந்த நடத்தையை நீங்கள் நிறுத்த விரும்பினால், புதிய ஆபரேட்டரைப் பயன்படுத்தி ஒரு சரத்தை உருவாக்கவும்:
சரம் s1 = புதிய சரம் (“ரேச்சல்”)
இப்போது, இந்த சரத்தை நீங்கள் சேர்க்க விரும்பினால் , ஜாவா உங்களுக்கு இது போன்ற ஒரு முறையை வழங்குகிறது, இன்டர்ன் () முறை இது போன்ற சொந்த இன்டர்ன் () முறையை நீங்கள் அழைக்கலாம்:
S1.intern ()
இப்போது, ஒரு உதாரணம் மூலம் சரம் பூல் செயல்படுத்தப்படுவதையும் செயல்படுவதையும் காண்பிப்பேன்.
ஆனால் அதற்கு முன், ஒரு குறுகிய நினைவூட்டல்!
== ஆபரேட்டரைப் பயன்படுத்தி 2 பொருள்களை ஒப்பிடுகிறீர்களா என்பது உங்களுக்குத் தெரியும், இது நினைவகத்தில் உள்ள முகவரிகளை ஒப்பிடுகிறது.
ஜாவா குறியீட்டை எவ்வாறு தொகுப்பது
ஆகவே, அதே பொருள் இல்லையா என்பதை முழுமையாக உறுதிப்படுத்த == ஐப் பயன்படுத்தி சரங்களை ஒப்பிடுவோம்.
இப்போது, எங்கள் செயல்படுத்தல் செயல்முறையை எதிர்பார்க்கலாம்.
ஜாவா எடுத்துக்காட்டில் மார்க்கர் இடைமுகம்
ஜாவாவில் சரம் பூல்: ஓட்ட வரைபடம்
இப்போது இங்கே என்ன நடக்கிறது என்பதை படிப்படியாக புரிந்துகொள்வோம்:
- எப்போது வகுப்பு ஏற்றப்படுகிறது செயல்படுத்தப்படுகிறது.
- ஜே.வி.எம் நிரலில் உள்ள அனைத்து சரம் எழுத்தாளர்களையும் தேடுகிறது
- முதலாவதாக, இது 'ஆப்பிள்' என்ற பொருளைக் குறிக்கும் மாறி s1 ஐக் கண்டறிந்து அது நினைவகத்தில் உருவாக்கப்படுகிறது
- 'ஆப்பிள்' என்பதற்கான குறிப்பு சரம் நிலையான பூல் நினைவகத்தில் வைக்கப்படுகிறது.
- பின்னர் அது மற்றொரு மாறி s2 ஐக் காண்கிறது, இது அதே சரம் 'மா' என்பதைக் குறிக்கிறது.
- பின்னர் அது 'ஆப்பிள்' என்ற பொருளைக் குறிக்கும் மற்றொரு மாறி s3 ஐக் காண்கிறது
- இப்போது ஜே.வி.எம் ஏற்கனவே “ஆப்பிள்” என்ற சரம் ஒன்றைக் கண்டறிந்துள்ளது, எஸ் 1 மற்றும் எஸ் 3 ஆகிய மாறிகள் ஒரே பொருளைக் குறிக்கும், அதாவது “ஆப்பிள்”.
சரம் குளத்திற்கான ஜாவா நிரல்
பொது வகுப்பு StringPoolExperiment {public static void main (சரம் [] args) {சரம் s1 = 'ரேச்சல்' சரம் s2 = 'ரேச்சல்' சரம் s3 = புதிய சரம் ('ரேச்சல்') சரம் s4 = புதிய சரம் ('ரேச்சல்'). பயிற்சி ( ) System.out.println (s1 == s2) // true System.out.println (s1 == s3) // false System.out.println (s1 == s4) // true}}
வெளியீடு:
உண்மை
பொய்
உண்மை
மேலே உள்ள எடுத்துக்காட்டில், மூன்று வழிகளிலும் சரம் துவக்கத்தின் பயன்பாட்டை நீங்கள் தெளிவாகக் காணலாம்
சரம் s1 = 'ரேச்சல்' சரம் s2 = 'ரேச்சல்' சரம் s3 = புதிய சரம் ('ரேச்சல்') சரம் s4 = புதிய சரம் ('ரேச்சல்'). இன்டர்ன் ()
திட்டத்தின் உள் வேலை இப்போது தெளிவாக இருக்க வேண்டும்.
இதன் மூலம், எனது வலைப்பதிவின் முடிவை அடைந்துவிட்டேன். இங்கே விவரிக்கப்பட்டுள்ள உள்ளடக்கங்கள் உங்கள் அறிவுத் தளத்தை விரிவுபடுத்த உதவியது என்று நம்புகிறேன். நாங்கள் ஜாவா உலகில் டைவிங் செய்வோம். காத்திருங்கள்!
பாருங்கள் உலகெங்கிலும் பரவியுள்ள 250,000 க்கும் மேற்பட்ட திருப்தியான கற்றவர்களின் வலைப்பின்னலுடன் நம்பகமான ஆன்லைன் கற்றல் நிறுவனமான எடுரேகாவால். ஜுவா டெவலப்பராக விரும்பும் மாணவர்கள் மற்றும் நிபுணர்களுக்காக எடுரேகாவின் ஜாவா ஜே 2 இஇ மற்றும் எஸ்ஓஏ பயிற்சி மற்றும் சான்றிதழ் பாடநெறி வடிவமைக்கப்பட்டுள்ளது. ஜாவா புரோகிராமிங்கில் ஒரு தொடக்கத்தைத் தருவதற்கும், முக்கிய மற்றும் மேம்பட்ட ஜாவா கருத்தாக்கங்களுக்கும், ஹைபர்னேட் & வசந்த .
எங்களுக்கு ஒரு கேள்வி கிடைத்ததா? தயவுசெய்து இந்த “ஜாவாவில் உள்ள சரம் குளம்” வலைப்பதிவின் கருத்துகள் பிரிவில் குறிப்பிடவும், விரைவில் நாங்கள் உங்களைத் தொடர்புகொள்வோம்.