Apex List For Loop అంటే ఏమిటి? | Salesforce Apex in Telugu

Apex List For Loop అంటే ఏమిటి? | Salesforce Apex Tutorial in Telugu – Day 10
📂 Salesforce Apex🟢 Beginner📘 Apex Daily

Apex List For Loop అంటే ఏమిటి?

Apex List For Loop అంటే ఏమిటి? | Salesforce Apex in Telugu

ఈ రోజు మనం చాలా ముఖ్యమైన List For Loop గురించి పూర్తిగా నేర్చుకుందాం.

ఇది Salesforce Developer గా మీరు చాలా సార్లు ఉపయోగించే Concept.

Coding కొత్తగా నేర్చుకుంటున్నవారికి కూడా అర్థమయ్యేలా Step by Step గా చూద్దాం.

ముందుగా ఒక చిన్న ఉదాహరణ చూద్దాం

మీ దగ్గర ఒక List లో 5 Student Names ఉన్నాయని అనుకోండి.

Ravi
Suresh
Kiran
Ramesh
Anil

ఇప్పుడు ప్రతి Student Name ని Print చేయాలి.

ఒక్కొక్క Name కోసం Separate Code రాయడం అవసరం లేదు.

List లో ఉన్న ప్రతి Name ని ఒక్కొక్కటిగా తీసుకుని Process చేయడానికి For Loop ఉపయోగించవచ్చు.

List For Loop అంటే ఏమిటి?

List లో ఉన్న ప్రతి Item ని ఒక్కొక్కటిగా తీసుకుని Process చేయడానికి ఉపయోగించే For Loop ను List For Loop అంటారు.

సులభంగా:

**List లో ఉన్న ప్రతి Record లేదా Value ని ఒక్కొక్కటిగా తీసుకుని పని చేయడం List For Loop.**

ముందుగా List Create చేద్దాం

List<String> names = new List<String>{
    'Ravi',
    'Suresh',
    'Kiran',
    'Ramesh'
};

ఇక్కడ మనం ఒక String List Create చేశాం.

మన List లో 4 Names ఉన్నాయి.

ఇప్పుడు List For Loop రాయండి

for (String name : names) {
    System.debug(name);
}

Output:

Ravi
Suresh
Kiran
Ramesh

ఈ Code ఎలా పనిచేస్తుంది?

ఈ Line ని జాగ్రత్తగా చూడండి:

for (String name : names)

ఇక్కడ:

String → List లో ఉన్న Data Type

name → ప్రతి Item ని Temporary గా Store చేసే Variable

names → మన List

అంటే:

`names` List లో ఉన్న ప్రతి String Value ని ఒక్కొక్కటిగా `name` Variable లోకి తీసుకుని Process చేయి.

Step by Step చూద్దాం

మన List:

Ravi
Suresh
Kiran
Ramesh

First Iteration

name = Ravi

అప్పుడు:

System.debug(name);

Output:

Ravi

Second Iteration

name = Suresh

Output:

Suresh

Third Iteration

name = Kiran

Output:

Kiran

Fourth Iteration

name = Ramesh

Output:

Ramesh

List లో Items అయిపోయిన తర్వాత Loop Stop అవుతుంది.

ఇది Traditional For Loop కంటే ఎలా Different?

Traditional For Loop:

for (Integer i = 1; i <= 5; i++) {
    System.debug(i);
}

ఇక్కడ మనం Counter ఉపయోగిస్తున్నాం.

List For Loop:

for (String name : names) {
    System.debug(name);
}

ఇక్కడ మనం List లోని ప్రతి Item మీద Direct గా పని చేస్తున్నాం.

Salesforce లో List For Loop ఎందుకు ముఖ్యమైనది?

Salesforce Development లో మనం చాలా Records ని List లో Store చేస్తాం.

ఉదాహరణకు:

List<Account> accounts;

ఇది Accounts యొక్క List.

ఇప్పుడు ప్రతి Account ని ఒక్కొక్కటిగా Process చేయాలంటే:

for (Account acc : accounts) {
    System.debug(acc.Name);
}

ఇలా రాస్తాం.

Account Example

ముందుగా Accounts ని Query చేసి List లో Store చేద్దాం.

List<Account> accounts = [
    SELECT Id, Name
    FROM Account
];

ఇప్పుడు accounts లో Salesforce నుండి వచ్చిన Accounts అన్నీ ఉంటాయి.

తర్వాత:

for (Account acc : accounts) {
    System.debug(acc.Name);
}

ఇది ప్రతి Account ని ఒక్కొక్కటిగా తీసుకుని Name Print చేస్తుంది.

Complete Program

List<Account> accounts = [
    SELECT Id, Name
    FROM Account
];

for (Account acc : accounts) {
    System.debug('Account Name: ' + acc.Name);
}

మీ Org లో Accounts ఉంటే వాటి Names Debug Log లో కనిపిస్తాయి.

Contact Example

ఇదే విధంగా Contacts కూడా Process చేయవచ్చు.

List<Contact> contacts = [
    SELECT Id, FirstName, LastName
    FROM Contact
];

for (Contact con : contacts) {
    System.debug(con.FirstName + ' ' + con.LastName);
}

ఇక్కడ:

contacts → Contact Records ఉన్న List

con → ఒక్కొక్క Contact Record

List For Loop లో If Condition కూడా ఉపయోగించవచ్చు

ఇది చాలా Important.

ఒక List లో ఉన్న ప్రతి Account ని Check చేసి, Technology Industry ఉన్న Accounts మాత్రమే Print చేయాలి అనుకుందాం.

List<Account> accounts = [
    SELECT Id, Name, Industry
    FROM Account
];

for (Account acc : accounts) {

    if (acc.Industry == 'Technology') {
        System.debug(acc.Name);
    }
}

ఇక్కడ మనం రెండు Concepts కలిపి ఉపయోగించాం:

For Loop + If Condition

ముందు మనం నేర్చుకున్న Topics ఇప్పుడు ఎలా ఉపయోగపడుతున్నాయో గమనించండి.

List For Loop లో ఏ Data Type అయినా ఉపయోగించవచ్చా?

List లో ఉన్న Data Type కి సరిపోయే Variable Type ఉపయోగించాలి.

String List:

List<String> names = new List<String>{
    'Ravi',
    'Kiran'
};

for (String name : names) {
    System.debug(name);
}

Integer List:

List<Integer> numbers = new List<Integer>{
    10,
    20,
    30
};

for (Integer number : numbers) {
    System.debug(number);
}

Account List:

List<Account> accounts = [
    SELECT Id, Name
    FROM Account
];

for (Account acc : accounts) {
    System.debug(acc.Name);
}

Real-Time Example – Opportunity

ఒక Salesforce Org లో ఉన్న అన్ని Opportunities ని తీసుకుని వాటి Names మరియు Stages Print చేయాలి.

List<Opportunity> opportunities = [
    SELECT Id, Name, StageName
    FROM Opportunity
];

for (Opportunity opp : opportunities) {
    System.debug('Opportunity: ' + opp.Name);
    System.debug('Stage: ' + opp.StageName);
}

ఇది Salesforce Development లో చాలా సాధారణమైన Pattern.

List For Loop ను ఇలా గుర్తుపెట్టుకోండి

for (DataType variable : listName) {
    // Code
}

ఉదాహరణ:

for (Account acc : accounts) {
    System.debug(acc.Name);
}

అంటే:

Accounts List లో ఉన్న ప్రతి Account ని acc Variable లోకి తీసుకుని Process చేయి.

`:` Symbol ఎందుకు ఉంది?

ఈ Symbol కూడా Beginners కి కొత్తగా ఉంటుంది.

for (Account acc : accounts)

ఇక్కడ : అంటే సింపుల్‌గా:

**accounts లోని ప్రతి Account ని acc లోకి తీసుకో**

అని అర్థం చేసుకోవచ్చు.

List For Loop లో Index అవసరమా?

సాధారణంగా List For Loop లో ప్రతి Item ని Process చేయడానికి మనం Index ని Direct గా ఉపయోగించాల్సిన అవసరం లేదు.

Example:

for (String name : names) {
    System.debug(name);
}

ఇది చాలా Clean మరియు Readable గా ఉంటుంది.

Beginners చేసే Common Mistake

List లో String ఉంటే String Variable ఉపయోగించాలి.

సరైనది:

List<String> names = new List<String>{
    'Ravi',
    'Kiran'
};

for (String name : names) {
    System.debug(name);
}

List లో Integer ఉంటే:

List<Integer> numbers = new List<Integer>{
    10,
    20
};

for (Integer number : numbers) {
    System.debug(number);
}

Data Type Match అవ్వడం చాలా ముఖ్యం.

Practice Task

Practice 1 – Names

List<String> names = new List<String>{
    'Ravi',
    'Suresh',
    'Kiran',
    'Anil'
};

for (String name : names) {
    System.debug('Student Name: ' + name);
}

Output Observe చేయండి.

Practice 2 – Numbers

List<Integer> numbers = new List<Integer>{
    10,
    20,
    30,
    40,
    50
};

for (Integer number : numbers) {
    System.debug(number);
}

Practice 3 – Accounts

List<Account> accounts = [
    SELECT Id, Name
    FROM Account
];

for (Account acc : accounts) {
    System.debug('Account: ' + acc.Name);
}

మీ Org లో Accounts లేకపోతే ముందుగా కొన్ని Account Records Create చేయండి.

Practice 4 – Account Industry

Technology Industry ఉన్న Accounts మాత్రమే Print చేయండి.

Hint:

if (acc.Industry == 'Technology')

Interview Questions

1. List For Loop అంటే ఏమిటి?

Answer:

List లేదా Collection లో ఉన్న ప్రతి Item ని ఒక్కొక్కటిగా Process చేయడానికి ఉపయోగించే For Loop ను List For Loop అంటారు.

2. `for (String name : names)` అంటే ఏమిటి?

Answer:

names List లో ఉన్న ప్రతి String Value ని ఒక్కొక్కటిగా name Variable లోకి తీసుకుని Process చేయడం.

3. List లో Account Records ఉంటే Loop ఎలా రాస్తారు?

Answer:

for (Account acc : accounts) {
    System.debug(acc.Name);
}

4. List For Loop లో If Condition ఉపయోగించవచ్చా?

Answer:

అవును. List లోని ప్రతి Item పై Conditions Check చేయవచ్చు.

5. List For Loop ఎందుకు ఉపయోగిస్తారు?

Answer:

List లో ఉన్న Values లేదా Salesforce Records ను ఒక్కొక్కటిగా Process చేయడానికి ఉపయోగిస్తారు.

Conclusion

ఈ రోజు మనం List For Loop గురించి పూర్తిగా నేర్చుకున్నాం.

ముఖ్యంగా Salesforce Development లో Lists లో ఉన్న:

  • Accounts
  • Contacts
  • Opportunities
  • Leads
  • Cases
  • Custom Object Records

వంటి Data ని ఒక్కొక్కటిగా Process చేయడానికి List For Loop చాలా ఉపయోగపడుతుంది.

ఈ రోజు Examples ని కేవలం చదవకుండా Developer Console లో స్వయంగా Type చేసి Run చేయండి.

Code ని మీరే Type చేసి, Values మార్చి, Output ఎలా మారుతుందో Observe చేస్తే Coding Logic చాలా త్వరగా Develop అవుతుంది.

Regular గా Practice చేయండి. Coding రాని మీరు కూడా చాలా సులభంగా Apex Coding నేర్చుకోగలరు. 🚀

Happy Learning & Happy Coding! ❤️

Happy Learning & Happy Coding! ❤️ — SFDC Telugu | Apex Daily Series

Post a Comment

0 Comments