CodeGym /Java Blog /சீரற்ற /எடுத்துக்காட்டுகளுடன் ஜாவாவில் வரிசை வாக்கெடுப்பு() முறை
John Squirrels
நிலை 41
San Francisco

எடுத்துக்காட்டுகளுடன் ஜாவாவில் வரிசை வாக்கெடுப்பு() முறை

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

வரிசை என்றால் என்ன?

பெயர் குறிப்பிடுவது போலவே, வரிசை என்பது ஜாவாவில் ஃபர்ஸ்ட் இன் ஃபர்ஸ்ட் அவுட் (FIFO) இன்செர்ஷன் ஆர்டரைப் பின்பற்றும் பொதுவான தரவுக் கட்டமைப்பாகும் . மளிகைக் கடையில் வரிசையாக இருப்பதை நீங்கள் எளிதாக கற்பனை செய்யலாம். நீங்கள் எவ்வளவு சீக்கிரம் நுழைகிறீர்களோ, அவ்வளவு சீக்கிரம் வெளியேறுவீர்கள். இதற்கு முன் வரிசையில் சேர்க்கப்பட்ட உறுப்பு முன்னதாகவே வெளியேறும். வரிசையின் முதல் உறுப்பு (முன்) தலை என்றும் அழைக்கப்படுகிறது .ஜாவாவில் வரிசை வாக்கெடுப்பு() முறை எடுத்துக்காட்டுகளுடன் - 2
படம் 1.0: ஜாவாவில் ஒரு எளிய வரிசை

வரிசையின் வாக்கெடுப்பு() முறை என்ன?

வாக்கெடுப்பு() முறையானது, வரிசையின் மிக உயர்ந்த உறுப்பை (தலை) மீட்டெடுக்கவும் அகற்றவும் உங்களை அனுமதிக்கிறது. எங்கள் எடுத்துக்காட்டில், மேலே உள்ள வரிசையில் நீங்கள் கருத்துக்கணிப்பு() ஐ அழைக்கும் போது, ​​அதன் விளைவாக '1' ஐப் பெறுவீர்கள். மேலும் வரிசையில் 4 உறுப்புகள் மட்டுமே மீதமுள்ளன.ஜாவாவில் வரிசை வாக்கெடுப்பு() முறை எடுத்துக்காட்டுகளுடன் - 3
படம் 1.1: வரிசையில் வாக்கெடுப்பு() முறையைப் பயன்படுத்திய பிறகு

ஜாவாவில் வாக்கெடுப்பு() முறை

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

படம் 1.0 இல் காட்டப்பட்டுள்ள வரிசையில் வாக்கெடுப்பு() செயல்பாட்டை அழைப்பதற்கான எளிய உதாரணத்தைப் பாருங்கள் .

import java.util.LinkedList;
import java.util.Queue;

public class QueuePollMethod {

	public static void main(String[] args) {

	  // create a queue of die rolls 
        Queue dieRoll   = new LinkedList(); 
  
        // Add 6 integers one by one
        dieRoll.add(1); 
        dieRoll.add(2); 
        dieRoll.add(3); 
        dieRoll.add(4); 
        dieRoll.add(5); 
        dieRoll.add(6); 
  
        // print the original queue 
        System.out.println("Queue:\t" + dieRoll + "\n"); 
  
        // after calling poll()
        System.out.println("poll() returned : " + dieRoll.poll()); 
        System.out.println("Queue Updated!\t" + dieRoll + "\n"); 

        // after calling poll()
        System.out.println("poll() returned : " + dieRoll.poll()); 
        System.out.println("Queue Updated!\t" + dieRoll + "\n"); 
        
        // after calling poll()
        System.out.println("poll() returned : " + dieRoll.poll()); 
        System.out.println("Queue Updated!\t" + dieRoll + "\n");        
	}
}
வெளியீடு
வரிசை: [1, 2, 3, 4, 5, 6] வாக்கெடுப்பு() திரும்பியது : 1 வரிசை புதுப்பிக்கப்பட்டது! [2, 3, 4, 5, 6] வாக்கெடுப்பு() திரும்பியது : 2 வரிசை புதுப்பிக்கப்பட்டது! [3, 4, 5, 6] வாக்கெடுப்பு() திரும்பியது : 3 வரிசை புதுப்பிக்கப்பட்டது! [4, 5, 6]
ஒவ்வொரு வாக்கெடுப்பிற்குப் பிறகும் () வரிசையின் அழைப்பு அளவு 1 ஆல் குறைக்கப்பட்டு, தலை எவ்வாறு திரும்பும் என்பதை நினைவில் கொள்ளவும் .

உதாரணம் 2

வாரத்தில் உள்ள நாட்களின் மற்றொரு உதாரணத்தைப் பார்ப்போம். வாக்கெடுப்பை() வார நாட்களில் ஒவ்வொன்றாக அழைத்து அது எப்படி இருக்கும் என்று பார்ப்போம்.

import java.util.LinkedList;
import java.util.Queue;

public class QueuePollMethod {

	public static void main(String[] args) {
        
        Queue days   = new LinkedList(); 
        
        days.add("Sunday");
        days.add("Monday");
        days.add("Tuesday");
        days.add("Wednesday");
        days.add("Thursday");
        days.add("Friday");
        days.add("Saturday");

        // print all the days in the week
        System.out.println("Week Days: \t" + days + "\n"); 
  
        // after calling poll()
        System.out.println("poll() returned: " + days.poll()); 
        System.out.println("Days Updated!\t" + days + "\n"); 

        // after calling poll()
        System.out.println("poll() returned: " + days.poll()); 
        System.out.println("Days Updated!\t" + days + "\n"); 
        
        // after calling poll()
        System.out.println("poll() returned: " + days.poll()); 
        System.out.println("Days Updated!\t" + days + "\n");                   
	}
}
வெளியீடு
வார நாட்கள்: [ஞாயிறு, திங்கள், செவ்வாய், புதன், வியாழன், வெள்ளி, சனி] வாக்கெடுப்பு() திரும்பியது: ஞாயிறு நாட்கள் புதுப்பிக்கப்பட்டது! [திங்கள், செவ்வாய், புதன், வியாழன், வெள்ளி, சனி] வாக்கெடுப்பு() திரும்பியது: திங்கள் நாட்கள் புதுப்பிக்கப்பட்டது! [செவ்வாய், புதன், வியாழன், வெள்ளி, சனி] வாக்கெடுப்பு() திரும்பியது: செவ்வாய் நாட்கள் புதுப்பிக்கப்பட்டது! [புதன், வியாழன், வெள்ளி, சனி]

பீக்() மற்றும் அகற்று() ஆகியவற்றிலிருந்து வாக்கெடுப்பு() எவ்வாறு வேறுபடுகிறது?

மூன்று வெவ்வேறு கருத்துக்கள் மிகவும் ஒத்ததாக இருப்பதால், ஆரம்பநிலையாளர்களுக்கு அவற்றை இணைப்பது மிகவும் எளிதானது. "q" ஒரு வரிசையாக இருக்கட்டும், பின்னர் அவை எவ்வாறு வேறுபடுகின்றன என்பது இங்கே:
  • q.poll() : வரிசையின் தலையை அகற்றி மீட்டெடுக்கிறது
  • q.peek() : அகற்றாது ஆனால் வரிசையின் தலையை மீட்டெடுக்கிறது/திரும்புகிறது
  • q.remove() : வரிசையின் தலையை அகற்றி மீட்டெடுக்கிறது
எனவே, அகற்று() மற்றும் கருத்துக்கணிப்பு() ஆகியவை ஒரே மாதிரியானவை என்று தோன்றுகிறது . அவை சாதாரண சூழ்நிலைகளில் ஒரே மாதிரியாக செயல்படுகின்றன. ஆனால் வரிசை காலியாக இருக்கும்போது, ​​அகற்று() NoSuchElementException ஐ வீசுகிறது , அதே நேரத்தில் வாக்கெடுப்பு பூஜ்யமாக இருக்கும் .

எடுத்துக்காட்டு 3

இப்போது மேலே உள்ள மூன்று செயல்பாடுகளின் சில எடுத்துக்காட்டுகளை விரைவாகப் பார்ப்போம்.

import java.util.LinkedList;
import java.util.Queue;

public class QueuePollMethod {

	public static void main(String[] args) {
        
        Queue days   = new LinkedList(); 
        
        days.add("Sunday");
        days.add("Monday");
        days.add("Tuesday");
        days.add("Wednesday");
        days.add("Thursday");
        days.add("Friday");
        days.add("Saturday");

        // print all the days in the week
        System.out.println("Week Days: \t" + days + "\n"); 
  
        // after calling peek()
        System.out.println("peek() returned: " + days.peek()); 
        System.out.println("Week Days: \t" + days + "\n"); 

        System.out.println("peek() returned: " + days.peek()); 
        System.out.println("Week Days: \t" + days + "\n"); 
        
        // after calling remove()
        System.out.println("remove() returned: " + days.remove()); 
        System.out.println("Days Updated!\t" + days + "\n"); 
        
        System.out.println("remove() returned: " + days.remove()); 
        System.out.println("Days Updated!\t" + days + "\n"); 
       
        System.out.println("remove() returned: " + days.remove()); 
        System.out.println("remove() returned: " + days.remove()); 
        System.out.println("remove() returned: " + days.remove()); 
        System.out.println("remove() returned: " + days.remove()); 

        System.out.println("Days Updated!\t" + days + "\n"); 
 
        // after calling poll()
        System.out.println("poll() returned: " + days.poll()); 
        System.out.println("Days Updated!\t" + days + "\n");           
        
        System.out.println("poll() returned: " + days.poll()); 
        System.out.println("remove() returned: " + days.remove()); 

	}
}
வெளியீடு
வார நாட்கள்: [ஞாயிறு, திங்கள், செவ்வாய், புதன், வியாழன், வெள்ளி, சனி] பீக்() திரும்பியது: ஞாயிறு வார நாட்கள்: [ஞாயிறு, திங்கள், செவ்வாய், புதன், வியாழன், வெள்ளி, சனி] பீக்() திரும்பியது: ஞாயிறு வார நாட்கள் : [ஞாயிறு, திங்கள், செவ்வாய், புதன், வியாழன், வெள்ளி, சனி] அகற்று() திரும்பியது: ஞாயிறு நாட்கள் புதுப்பிக்கப்பட்டது! [திங்கள், செவ்வாய், புதன், வியாழன், வெள்ளி, சனி] அகற்று() திரும்பியது: திங்கள் நாட்கள் புதுப்பிக்கப்பட்டது! [செவ்வாய், புதன், வியாழன், வெள்ளி, சனி] நீக்கு() திரும்பியது: செவ்வாய் நீக்கு() திரும்பியது: புதன் நீக்கம்() திரும்பியது: வியாழன் நீக்கம்() திரும்பியது: வெள்ளி நாட்கள் புதுப்பிக்கப்பட்டது! [சனிக்கிழமை] வாக்கெடுப்பு() திரும்பியது: சனிக்கிழமை நாட்கள் புதுப்பிக்கப்பட்டது! [] வாக்கெடுப்பு() திரும்பியது: java.util.LinkedList.removeFirst(LinkedList.java:270) இல் java.util.LinkedList.remove(LinkedList.java:) நூலில் "முக்கிய" java.util.NoSuchElementException இல் பூஜ்ய விதிவிலக்கு
பீக்() வாரநாட்களை அழைத்த பிறகு நீங்கள் பார்க்க முடியும் . நாம் அகற்று() அல்லது கருத்துக் கணிப்பு() ஐப் பயன்படுத்தும்போது , ​​தலையைத் திருப்பி அனுப்பும் வரிசையின் அளவு 1 ஆல் குறைக்கப்படுகிறது. மேலும், java.util.NoSuchElementException என்பது காலியான வரிசையில் அகற்று() என்று அழைக்கும் போது , ​​கருத்துக்கணிப்பு() ஐப் பயன்படுத்துவதற்கு அத்தகைய விதிவிலக்கு எதுவும் கொடுக்கப்படவில்லை .

முடிவுரை

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