ஜாவாவில் Stream.sorted() Method என்றால் என்ன

Javavil Stream Sorted Method Enral Enna



ஜாவாவில், புரோகிராமர் தேவைக்கு ஏற்ப உள்ளீடுகளை வரிசைப்படுத்த வேண்டிய சில நிகழ்வுகள் இருக்கலாம். உதாரணமாக, வரிசைப்படுத்தப்படாத அல்லது தோராயமாக உருவாக்கப்பட்ட மதிப்புகளை ஒரு குறிப்பிட்ட (ஏறும் அல்லது இறங்கு) முறையில் மீட்டெடுப்பது. இத்தகைய சூழ்நிலைகளில், ' Stream.sorted() ”முறையானது டெவலப்பரின் முடிவில் தரவை திறம்பட வரிசைப்படுத்த உதவுகிறது.

இந்தக் கட்டுரையானது ஜாவாவில் 'Stream.sorted()' முறையைப் பயன்படுத்துவது மற்றும் செயல்படுத்துவது பற்றி விரிவாகக் கூறுகிறது.







ஜாவாவில் “Stream.sorted()” முறை என்றால் என்ன?

' Stream.sorted() 'முறையானது' உடன் ஒத்துள்ளது ஸ்ட்ரீம் ' இடைமுகம். இந்த முறை அசல் ஸ்ட்ரீமில் வரிசைப்படுத்தும் உறுப்புகள்/பொருட்களை பாதிக்காமல் வரிசைப்படுத்தப்பட்ட ஸ்ட்ரீமை வழங்குகிறது.



தொடரியல்



வழக்கு 1: அளவுரு இல்லை





ஓடை.வரிசைப்படுத்தப்பட்டது ( )

வழக்கு 2: அளவுருவுடன்



ஓடை.வரிசைப்படுத்தப்பட்டது ( தொகுப்பு )

இந்த தொடரியல், ' தொகுப்பு ” என்பது வரிசையாக்கம் செய்யப்படும் ஒப்பீட்டாளரைக் குறிக்கிறது.

எடுத்துக்காட்டுகளுக்குச் செல்வதற்கு முன், பின்வரும் தொகுப்பைச் சேர்க்கவும். தனிமங்களில் செயல்பாட்டு-பாணி செயல்பாடுகளை அனுமதிக்க, இந்த தொகுப்பு வகுப்புகள், இடைமுகங்கள் போன்றவற்றை உள்ளடக்கியது:

java.util.stream ஐ இறக்குமதி செய்யவும். * ;

எடுத்துக்காட்டு 1: ஜாவாவில் முழு எண்களை வரிசைப்படுத்த (ஏறும் மற்றும் இறங்கும்) “Stream.sorted()” முறையைப் பயன்படுத்துதல்

' Stream.of() கொடுக்கப்பட்ட உறுப்புகளுக்கு ஒரு வரிசை ஸ்ட்ரீமை உருவாக்க 'முறை பயன்படுத்தப்படுகிறது. இந்த எடுத்துக்காட்டில், இந்த முறையை '' உடன் இணைந்து பயன்படுத்தலாம் Stream.sorted() ” முழு எண்களின் ஸ்ட்ரீமை ஏறுவரிசை மற்றும் இறங்கு முறையில் வரிசைப்படுத்தும் முறை:

பொது வகுப்பு வரிசைப்படுத்தப்பட்டது {
பொது நிலையான வெற்றிட முக்கிய ( லேசான கயிறு [ ] args ) {
ஸ்ட்ரீம் < முழு > sortStream1 = Stream.of ( 2 , 4 , 3 , 5 , 1 ) ;
ஸ்ட்ரீம் < முழு > sortStream2 = Stream.of ( 9 , 6 , 7 , 8 , 10 ) ;
System.out.println ( 'முதல் ஸ்ட்ரீம்:' ) ;
sortStream1.sorted ( ) .ஒவ்வொரு ( System.out::println ) ;
System.out.println ( ' \n இரண்டாவது ஸ்ட்ரீம்: ' ) ;
sortStream2.sorted ( ( a, b ) - > b-a ) .ஒவ்வொரு ( System.out::println ) ;
} }

இந்த குறியீடு துணுக்கில்:

  • '' வழியாக இரண்டு வெவ்வேறு முழு எண் ஸ்ட்ரீம்களை உருவாக்கவும் () ”முறை.
  • அதன் பிறகு, இணைக்கவும் ' வரிசைப்படுத்தப்பட்டது() 'உருவாக்கப்பட்ட முன்னாள் ஸ்ட்ரீமில் ஸ்ட்ரீமை வரிசைப்படுத்துவதற்கான முறை' ஏறும் ” உத்தரவு.
  • இப்போது, ​​விண்ணப்பிக்கவும் ' வரிசைப்படுத்தப்பட்டது() ” முறை மீண்டும் பிந்தைய ஸ்ட்ரீமில் ஸ்ட்ரீமைத் திரும்ப “ இறங்குதல் 'குறிப்பிட்ட ஒப்பீட்டாளரின் படி வரிசைப்படுத்தவும், அதாவது,' b-a ”.
  • கடைசியாக, கன்சோலில் இரண்டு நிலைகளிலும் வரிசைப்படுத்தப்பட்ட முழு எண்கள் ஸ்ட்ரீமைக் காட்டவும்.

வெளியீடு

இந்த வெளியீட்டில், இரண்டு ஸ்ட்ரீம்களும் அதற்கேற்ப வரிசைப்படுத்தப்படுவதைக் காணலாம்.

அடுத்த உதாரணத்திற்குச் செல்வதற்கு முன், அனைத்து வகுப்புகளையும் முறைகளையும் அணுக, கீழே கொடுக்கப்பட்டுள்ள உதாரணத்தைச் சேர்க்கவும்:

java.util இறக்குமதி. * ;

எடுத்துக்காட்டு 2: வகுப்புப் பொருள்களை வரிசைப்படுத்த “Stream.sorted()” முறையைப் பயன்படுத்துதல்

இந்த குறிப்பிட்ட எடுத்துக்காட்டில், கடந்த மதிப்புகளை வரிசைப்படுத்த விவாதிக்கப்பட்ட முறையை வகுப்பு பொருள்களில் செயல்படுத்தலாம்:

வகுப்பு தரவு {
முழு எண்ணாக ஐடி ;
சரத்தின் பெயர்;
தகவல்கள் ( முழு எண்ணாக ஐடி ,சரம் பெயர் ) {
this.id = ஐடி ;
இந்த.பெயர் = பெயர்;
}
பொது சரம் toString ( ) {
திரும்ப 'id=' + this.id
+ ', பெயர்=' + இந்த.பெயர்;
} }
வகுப்பு வரிசைப்படுத்தப்பட்டது {
பொது நிலையான வெற்றிட முக்கிய ( லேசான கயிறு [ ] args ) {
பட்டியல் < தகவல்கள் > பட்டியல் = புதிய வரிசைப்பட்டியல் < தகவல்கள் > ( ) ;
list.add ( புதிய தரவு ( 2 , 'ஹாரி' ) ) ;
list.add ( புதிய தரவு ( 1 , 'டேவிட்' ) ) ;
list.add ( புதிய தரவு ( 3 , 'டாம்' ) ) ;
ஸ்ட்ரீம் < தகவல்கள் > ஸ்ட்ரீம் = பட்டியல்.ஸ்ட்ரீம் ( ) ;
ஓடை.வரிசைப்படுத்தப்பட்டது ( ( e1, e2 ) - > e1.id - e2.id ) .ஒவ்வொரு ( System.out::println ) ;
} }

குறியீட்டின் இந்த வரிகளில், பின்வரும் படிகளைச் செய்யவும்:

  • முதலில், '' என்ற வகுப்பை அறிவிக்கவும் தகவல்கள் ”.
  • அதன் வரையறையில், கூறப்பட்ட மாறிகளைக் குறிப்பிடவும்.
  • அடுத்த கட்டத்தில், குறிப்பிட்ட மாறிகளுக்கு ஒரே மாதிரியான அளவுருக்கள் கொண்ட ஒரு அளவுரு வகுப்பு கட்டமைப்பாளரைச் சேர்க்கவும்.
  • கன்ஸ்ட்ரக்டர் வரையறையில், குறிப்பிட்ட மாறிகளைப் பார்க்கவும், மேலும் '' வழியாக அனுப்பப்பட்ட வாத மதிப்புகளை அவர்களுக்கு ஒதுக்கவும். இது ”.
  • இப்போது, ​​'' toString() 'கடந்த மதிப்புகளை திரும்பப் பெறுவதற்கான முறை.
  • இல் ' முக்கிய() 'முறை, வகுப்புப் பொருள்களின் பட்டியலை உருவாக்கி, அதனுடன் தொடர்புடைய' மூலம் பட்டியலில் குறிப்பிடப்பட்ட அனுப்பப்பட்ட மதிப்புகளைச் சேர்க்கவும் கூட்டு() ”முறை.
  • அதன் பிறகு, பட்டியலிலிருந்து ஸ்ட்ரீமைப் பெறவும் ' ஸ்ட்ரீம் () ”முறை.
  • மேலும், விண்ணப்பிக்கவும் ' வரிசைப்படுத்தப்பட்டது() 'கூறப்பட்ட ஒப்பீட்டாளருடன் இரண்டு பொருள்களை ஒப்பிடும் முறை' ஐடி 'ஒரு' இல் ஏறும் ” முறையில்.
  • இறுதியாக, விண்ணப்பிக்கவும் ' ஒவ்வொரு() கன்சோலில் வரிசைப்படுத்தப்பட்ட பொருட்களை ஸ்ட்ரீம் செய்வதற்கான முறை.

வெளியீடு

இந்த முடிவில், பொருள் மதிப்புகள் சரியான முறையில் வரிசைப்படுத்தப்பட்டுள்ளன என்பதை பகுப்பாய்வு செய்யலாம்.

முடிவுரை

' Stream.sorted() ' என்பது ' உடன் தொடர்புடைய முறை ஸ்ட்ரீம் ” அசல் ஸ்ட்ரீமில் வரிசைப்படுத்தும் உருப்படிகள்/உறுப்புகளை பாதிக்காமல் வரிசைப்படுத்தப்பட்ட ஸ்ட்ரீமை வழங்கும் இடைமுகம். இந்த முறையானது, குறிப்பிட்ட ஒப்பீட்டாளரின் அடிப்படையில் உறுப்புகளை இயல்புநிலை வழியில் வரிசைப்படுத்துகிறது. இந்த வலைப்பதிவு ஜாவாவில் “Stream.sorted()” முறையைப் பயன்படுத்துவது மற்றும் செயல்படுத்துவது பற்றி விவாதிக்கப்பட்டது.