본문 바로가기

개발자정보

세일즈포스 관리자를 위한 Apex 기본 교육 :: Apex 프로그래밍 언어의 기초에 대해 알아봅니다.

반응형

Apex 시작하기

학습 목표

이 단원을 완료하면 다음을 수행할 수 있습니다.

  • 코드가 무엇인지 정의하십시오.
  • 코드를 저장하고 편집할 위치를 설명합니다.
  • 코드 주석을 작성하는 두 가지 방법을 설명하십시오.
  • 코드 주석이 중요한 이유를 설명하십시오.

전문가에게 배울 수 있다는 사실, 알고 계셨나요? 

 

Apex 코드에 대해 배우기 위해 Salesforce 지식을 확장하는 데 관심이 있으십니까? 

잘 찾아오셨습니다. 

코드 읽기 및 쓰기의 세계로 단계별 안내를 받을 준비를 하십시오. 

처음에는 조금 무서울 수 있지만 걱정하지 마십시오.

가장 복잡한 개념도 단순화할 것입니다. 

관리자는 Salesforce 기능의 기능과 현재 제한 사항을 이미 이해하고 있습니다. 

 

Process Builder를 사용하여 비즈니스 프로세스를 자동화한 경험이 있으며 고객을 위한 최고의 맞춤형 애플리케이션을 제공하는 데 열정적입니다. 

 

이 모듈을 진행하면서 먼저 프로그래밍 개념을 소개하고 직접 테스트할 수 있는 예제를 소개합니다.

 

시작할 준비가 되셨습니까? 하자!

코드란?

코드는 인간이 컴퓨터와 대화하는 데 사용하는 언어입니다. 

우리는 코드를 사용하여 특정 작업을 수행하기 위한 정확한 지침 세트를 작성합니다. 

코드를 레시피처럼 생각하십시오. 

요리가 예상한 대로 나오려면 각 재료와 지침이 정확해야 합니다.

전 세계 사람들이 서로 다른 언어를 사용하는 것처럼 컴퓨터도 JavaScript, Java, Ruby, Python 등과 같은 다양한 언어를 사용합니다. 

 

프로그래밍 언어는 여러 면에서 다르지만 모두 동일한 기본 구조를 기반으로 하며 컴퓨터에서 모두 해석하여 응용 프로그램을 만들 수 있습니다. 

 

Apex 프로그래밍 언어에 대해 더 많이 배우면 프로그래밍 구조를 이해하기 시작할 것입니다.

Apex 코드는 어디에 저장됩니까?

어디서부터 시작해야 할까요? 

먼저 코드를 저장할 위치를 파악해야 합니다. 

코드는 파일에 저장됩니다. 

이러한 파일은 로컬(PC 또는 Mac), 클라우드(Salesforce 조직) 또는 로컬에 저장되어 클라우드에 자동으로 동기화될 수 있습니다. 얼마나 멋진가요? 

 

개발자 콘솔
관리자로서 개발자 콘솔 이라는 것에 대해 들어본 적이 있을 것입니다. 

개발자 콘솔은 개발자가 코드 파일을 만들고 편집하는 데 사용하는 도구입니다. 

이 모듈 전체에서 개발자 콘솔을 사용하여 Salesforce 조직에서 코드를 저장 및 실행(실행)합니다. 

한 번 보자.

개발자 콘솔에 액세스하려면 다음 단계를 따르세요.

  1. 먼저 Trailhead에 로그인했는지 확인합니다.
  2. 그런 다음 이 페이지의 오른쪽 상단 모서리에 있는 사용자 아바타를 클릭 하고 드롭다운에서 Hands-on Orgs 를 선택합니다.
  3. 사용자 이름을 클릭하여 조직을 시작합니다. 새 조직을 만들고 싶으십니까? 방법을 알아 보려면 Trailhead Playground Management 모듈을 참조하십시오 .
  4. Trailhead Playground 
     에서 개발자 콘솔 을 클릭 하고 선택 합니다.

개발자 콘솔을 열어 둡니다. 이 모듈 전체에서 코드를 테스트하는 데 사용할 것입니다.

 

의사 코드 작성

Salesforce 관리자로 참여하는 모든 프로젝트의 가장 중요한 부분은 계획입니다. 

계획은 고객의 요구 사항을 이해하고 자신의 생각을 정리하며 응용 프로그램을 개발하는 동안 발생할 수 있는 문제를 예측하는 데 도움이 됩니다. 

프로젝트 계획 중에 개발자는 Apex 코드 작성을 시작하기 전에 의사 코드를 작성합니다. 

의사 코드는 프로그램이나 기능이 수행해야 하는 작업에 대한 상세하지만 읽을 수 있는 설명입니다. 

프로그래밍 언어가 아닌 자연어로 작성되었습니다. 

의사 코드를 사용하면 프로그래머가 아닌 사람이 제안된 코드가 응용 프로그램의 요구 사항을 충족하는지 확인하는 단계를 검토할 수 있습니다. 

 

개발자는 별도의 문서, 화이트보드 또는 개발자 콘솔에 의사 코드를 작성합니다. 

의사 코드 작성이 개발자가 응용 프로그램을 프로그래밍하는 방법에 대한 생각을 문서화하는 데 어떻게 도움이 되는지 알아보기 위해 의사 코드를 작성하여 친구를 위한 차 한 잔을 만들어 보겠습니다.

  1. 개발자 콘솔에서 File | New | Apex Class .
  2. 지금 수업이 무엇인지 걱정하지 마십시오. 고급 모듈에서 Apex 클래스에 대해 알아봅니다. 지금은 이 파일을 텍스트 파일로 생각하십시오.
  3. 클래스 이름을 지정합니다 Teatime.
  4. 클릭 OK .
  5. 클래스 이름을 지정하면 새 클래스가 있는 창이 나타납니다.
  6. 기존 수업 위에 이 지침을 복사하여 붙여넣습니다.
Get Utensils and Ingredients
Boil Water in a Tea Kettle
Make Tea in Teapot
Add Tea and Sugar to a Teacup
Serve Tea to Friend

각 의사 코드 문(명령)은 작업을 명시해야 합니다. 

로봇에게 이러한 지시를 내린다면 로봇이 각 단계를 올바르게 수행할 수 있다고 생각하십니까?

아마 그렇지 않을 것입니다. 

로봇은 어떤 도구와 재료를 가져와야 하는지, 물을 끓이는 방법, 추가할 각 재료의 양을 알아야 합니다. 

이 의사 코드는 더 자세한 정보가 필요합니다. 

  1. 개발자 콘솔로 돌아갑니다.
  2. 기존 코드를 다음 코드로 바꿉니다.
Get Utensils and Ingredients
    Get Teacup
    Get Spoon
    Get Tea Kettle
    Get Teapot
    Get Tea
    Get Sugar
Boil water in a Tea Kettle
    Fill Kettle with Water
    Switch Kettle On
    Wait for Kettle to Boil
Make Tea in Teapot
    Put Tea in Teapot
    Put Boiling Water in Teapot
    Wait 2 Minutes
Add Tea and Sugar to Teacup
    Pour Tea in Teacup
    Put 1 teaspoon of Sugar in Teacup
    Stir Tea in Teacup
Serve Tea to a Friend
  
public class Teatime {
}

의사 코드를 작성할 때 각 단계를 진행하고 모든 시나리오를 설명할 수 있도록 최대한 세분화하십시오. 

예를 들어, 이 의사 코드는 주전자에 물을 채우라고 말합니다. 

주전자가 이미 가득 차면 어떻게 합니까? 로봇이 주전자에 물을 계속 채워야 합니까? 주전자를 비워야 하나요? 개발자처럼 생각할 때는 다양한 관점에서 생각하고 여러 가능성을 고려해야 합니다.

코드 주석

관리자로서 설명이 없는 사용자 정의 필드를 본 적이 있습니까? 해당 필드에 매우 명확하고 설명적인 이름이 없으면 목적이 명확하지 않을 수 있습니다. 코드에서 주석은 코드 블록(하나 이상의 코드 줄)의 목적을 설명합니다. 주석은 개발자가 작성해야 할 코드, 기존 코드가 수행하는 작업 및 실패한 코드가 수행해야 하는 작업을 이해하는 데 도움이 됩니다. 개발자는 코드 내에 주석을 삽입하지만 주석을 읽거나 실행하지 않도록 컴퓨터에 지시하는 특수 문자로 묶습니다. 

코드를 주석 처리하는 두 가지 방법인 한 줄 주석과 여러 줄 주석을 살펴보겠습니다.

 

한 줄 주석 한
줄 주석은 두 개의 슬래시( // )로 시작합니다. 컴퓨터 프로그램은 실행될 때 // 오른쪽에 있는 같은 줄의 문자를 무시합니다. 

예시: 

Integer i = 1; //This comment will be ignored when the code is run.

 

여러 줄 주석 여러 줄 주석은
슬래시 별표( /* )로 시작하고 별표 슬래시( */ )로 끝납니다. 

예시:

Integer i = 1; /*This comment is
                ignored when the
                code runs*/

메모

여러 줄 주석에서 코드가 여러 줄에 걸쳐 있지만 모두 들여쓰기되어 있음을 눈치채셨나요? 일관된 들여쓰기는 가독성을 향상시키며 중요한 모범 사례입니다. 

Teatime 의사 코드를 주석으로 변환해 보겠습니다. 코드 개발을 순조롭게 유지하려면 개요처럼 의사 코드를 작성하는 것이 좋습니다.

  1. 개발자 콘솔에서 의사 코드에 여러 줄 주석을 추가합니다. 다음과 같이 보여야 합니다.
/*Get Utensils and Ingredients
    Get Teacup
    Get Spoon
    Get Tea Kettle
    Get Teapot
    Get Tea
    Get Sugar
Boil water in a Tea Kettle
    Fill Kettle with Water
    Switch Kettle On
    Wait for Kettle to Boil
Make Tea in Teapot
    Put Tea in Teapot
    Put Boiling Water in Teapot
    Wait 2 Minutes
Add Tea and Sugar to Teacup
    Pour Tea in Teacup
    Put 1 teaspoon of Sugar in Teacup
    Stir Tea in Teacup
Serve Tea to a Friend*/
  
public class Teatime {
}

2.클릭  File | Save .

이 모듈에서는 Apex 코드를 작성할 때 모범 사례를 따르는 방법을 배웁니다. 이것은 당신이 뛰어난 개발자가 되기 위한 기반을 마련할 것입니다.  

 

이제 본격적으로 코딩을 시작해 보겠습니다. 

Quiz

1. What is code?

A. Lines of instruction used to communicate with computers.

B.The language used to communicate with pets.

C.A pact between friends.

D.The rules for computers.

2What is the syntax to begin a multiline code comment?

A.//

B.#

C./*

D.{

 

 

개발자 콘솔에서 연습

학습 목표

이 단원을 완료하면 다음을 수행할 수 있습니다.

  • 일반적인 데이터 유형을 나열합니다.
  • 변수를 선언합니다.
  • 디버그 문을 구성하고 그 결과를 설명합니다.
  • 구문을 정의합니다.

지난 단원에서는 코드, 의사 코드 및 코드 주석에 대해 배웠습니다. 그러나 한 가지는 확실합니다. 코드를 읽고 쓰는 방법을 배우고 싶다면 그것을 하는 것 외에는 아무 것도 없습니다. 시작하겠습니다.

변수

변수를 데이터의 컨테이너로 생각하십시오. 그 안에 무엇이 들어 있는지 설명하기 위해 이름을 지정할 수 있습니다. 물리적으로 고유한 이름으로 레이블을 지정하고 컨테이너에 항목을 추가할 수 있습니다. 컨테이너에 원하는 모든 것이 들어 있으면 필요할 때까지 컨테이너를 치울 수 있습니다. 

변수는 임시 필드와도 유사합니다. 필드와 마찬가지로 각 변수에는 이름이 있고 데이터 유형도 있습니다. 코드가 실행될 때 해당 변수 이름은 코드를 해석하는 시스템인 컴파일러에 중요하지 않습니다. 그러나 개발자가 코드를 업데이트하거나 수정하려고 할 때 의미 있는 변수 이름은 각 변수의 목적을 이해하는 데 드는 시간을 줄여줍니다. 다음 예를 고려하십시오.

String f = 'Melissa';

f라는 변수의 목적은 명확하지 않습니다. 모범 사례는 명확하고 설명이 포함된 변수 이름을 선택하는 것입니다. 예를 들면 다음과 같습니다.

String firstName = 'Melissa';

 

이름은 변수가 나타내는 것을 설명하지만 데이터 유형은 변수가 포함할 수 있는 것을 정의합니다.

공통 데이터 유형

데이터 형식설명 및 예

Integer 소수점이 없는 양수 또는 음수입니다.

Integer num = 12;
Decimal 소수점이 있는 양수 또는 음수입니다.

Decimal num = 12.22222;
String 작은따옴표로 묶인 일련의 문자입니다. 여기에는 한 글자에서 문장까지의 짧은 텍스트가 포함될 수 있습니다.

String whatAmI = 'A String';
Boolean 일반적으로 true 또는 false입니다. Apex에서는 null(비어 있음)도 유효한 값입니다. 부울은 일반적으로 확인란과 함께 사용됩니다.

Boolean doSomething = False;
ID (Salesforce ID) 모든 유효한 18자 Salesforce 레코드 ID.

Id contactId = '00300000003T2PGAA0';

Apex는 강력한 형식의 언어입니다. 즉, 변수를 선언(생성)할 때마다 데이터 형식, 이름 및 선택적으로 초기 값을 설정합니다. 

이 예에서 Integer는 데이터 유형, i는 변수 이름, 2는 변수의 초기 값입니다. 변수 이름은 원하는 대로 지정할 수 있습니다. 가장 좋은 방법은 변수의 목적을 명확하게 전달하는 이름을 사용하여 다른 개발자가 쉽게 읽고 이해할 수 있도록 하는 것입니다.

변수를 초기화할 때(초기 값 할당) 할당하는 값은 변수의 데이터 유형과 일치해야 합니다. 변수 선언문 내에서 값을 할당하지 않도록 선택하면 변수 값은 null입니다.

변수를 선언합시다.

 

1.개발자 콘솔에서  Debug | Open Execute Anonymous Window.

Execute Anonymous는 코드를 저장하지 않고 실행합니다. 애플리케이션에 코드를 추가하기 전에 짧은 코드 조각으로 실험할 수 있는 좋은 방법입니다.

 

2. 이 코드를 복사하여 Apex 코드 입력 창에 붙여넣습니다.

Integer numberOfSpoons;
System.debug(numberOfSpoons);

 

3.System.debug 디버그 로그에 괄호의 내용을 표시합니다.

  1. 선택 열기 로그 확인란을 선택하고 다음을 클릭합니다 실행 .
    실행 로그가 열리고 코드 실행 결과가 표시됩니다.
  2. 창 하단에서 디버그 전용 확인란을 선택합니다 .
    이제 세부 정보 열에 System.debug 출력 만 표시됩니다  .
    • System.debug실행된 코드 에서  있는 줄 번호 : 2.
    • 로깅 수준: DEBUG.
    • numberOfSpoons 변수의 값: null.

시스템.디버그

작동하지 않는 코드를 작성한다고 상상해 보십시오. 물어볼 사람도 없고 노트북을 창밖으로 던지는 것 외에는 Google 검색에 한 명뿐입니다. 이봐, 그것은 우리의 최선을 다합니다. 그것이 System.debug하루를 구하기 위해 오는  입니다! 

특정 변수 값이 변경될 때마다 알림을 받으면 좋지 않을까요? System.debug 문은 이러한 유형의 알림을 제공합니다. 개발자는 System.debug를 사용하여 코드가 잘못된 부분을 정확히 찾아내기 위해 값 변경을 모니터링합니다.

  1. 개발자 콘솔에서 디버그 | 익명 실행 창을 엽니다 .
  2. 이 코드를 복사하고 Apex 코드 입력 창의 기존 코드를 이 코드로 바꿉니다.
Integer numberOfSpoons;
System.debug(numberOfSpoons);
  
numberOfSpoons = 1;
System.debug(numberOfSpoons);

선택 열기 로그 확인란을 선택하고 다음을 클릭합니다 실행 . 실행 로그가 열리고 코드 실행 결과가 표시됩니다.창 하단에서 디버그 전용 확인란을 선택합니다 . 흥미로운 점을 발견하셨나요? 2행과 5행은 동일한 코드 행이지만 로그에서 다른 값을 생성합니다. 이는 변수 값이 언제든지 변경될 수 있기 때문에 발생합니다.

여기서는 간단한 예를 사용하여 작업하고 있습니다. 코드의 두 지점에 있는 숟가락 수 값입니다. 50줄의 코드를 실행하고 5개의 변수를 모니터링하는 경우 로그 세부 정보에서 값과 함께 각 변수의 이름을 보고 싶을 수 있습니다.

개발자는 연결을 사용하여 리터럴 텍스트와 변수 값을 + 기호로 연결합니다. 디버그 문에서 정보를 연결하면 디버그 로그를 더 쉽게 읽고 이해할 수 있습니다.

두 개의 디버그 문에 numberOfSpoons 변수의 이름을 값과 함께 포함시켜 보겠습니다.

  1. 개발자 콘솔에서 디버그 | 익명 실행 창을 엽니다 .
  2. 이 코드를 복사하여 Apex 코드 입력 창에 붙여넣습니다.
Integer numberOfSpoons;
System.debug('The variable numberOfSpoons is: ' + numberOfSpoons);
  
numberOfSpoons = 1;
System.debug('The variable numberOfSpoons is: ' + numberOfSpoons);
  1. 선택 열기 로그 확인란을 선택하고 다음을 클릭합니다 실행 . 실행 로그가 열리고 코드 실행 결과가 표시됩니다.
  2. 창 하단에서 디버그 전용 확인란을 선택합니다 .

이제 null과 1의 두 값이 numberOfSpoons 변수의 값이라는 것이 분명합니다. 

Syntax

코드를 구성하는 방법에 대해 이 코드 샘플에서 무엇을 발견했습니까? 프로그래밍 언어를 만들기 위해 텍스트와 구두점을 배열하는 방식을 구문이라고 합니다. 다음은 Apex 코드에 대한 몇 가지 구문 규칙입니다. 

  1. Apex 문이 세미콜론으로 끝나는 것을 가장 먼저 눈치채셨을 것입니다.
    String time;
    복사마침표가 문장을 끝내는 것과 같은 방식으로 세미콜론은 Apex 문을 끝냅니다. 명령문의 끝에서 세미콜론을 잊어버린 경우 친숙한 오류 메시지가 표시됩니다.

Apex 문자열은 작은따옴표를 사용하여 리터럴 텍스트를 주변 코드와 구분합니다. 숫자 및 부울(true 또는 false) 값에는 따옴표가 필요하지 않습니다.

String time = 'It is Tea Time!';
Integer i = 2;
Boolean b = false;

이제 변수, 데이터 유형 및 구문이 무엇인지 알았습니다. 변수를 선언하고 값을 할당하는 방법을 배웠습니다. 자신의 디버그 문을 만들고 디버그 로그에서 검토하는 연습을 했습니다. 

 

Quiz

1. A variable named teaKettleFull is declared. Later in the code, you reference the teaKettleFull variable, but an error occurs. How should you change the variable declaration to ensure that the code executes without an error? Integer teaKettleFull = false;

A.Remove the ; after false.

B.Change Integer to Boolean.

C.Change false to 'false'.

D.Change Integer to String.

 

2. What is syntax?

A.The method developers use for planning.

B.The set of rules to prepare your taxes.

C.The process to convert instructions to machine code.

D.The arrangement of punctuation and text within code.

 

Collections 사용

학습 목표

이 단원을 완료하면 다음을 수행할 수 있습니다.

  • 목록을 선언하고 초기화합니다.
  • 목록에 항목을 추가하는 두 가지 방법을 설명하십시오.

Collections

collection은 여러 항목을 저장할 수 있는 변수 유형입니다. 

우리의 차 예에서는 내부에 여러 개의 각설탕이 있는 설탕 그릇이 있습니다. 설탕 그릇은 컬렉션으로 간주되며 각설탕은 해당 컬렉션에 저장된 항목입니다.

Apex 컬렉션에는 세 가지 유형(목록, 집합 및 지도)이 있지만 이 모듈에서는 목록에 중점을 둡니다.  

기울기

Apex 목록은 쇼핑 목록과 같이 동일한 유형의 항목이 정렬된 그룹입니다. 

  1. 설탕
  2. 우유

쇼핑 목록의 각 항목은 문자열이며 각 항목은 목록 내에서 위치를 가집니다. 목록을 선언하려면 몇 가지가 필요합니다. 목록 예약어, <> 문자 내의 데이터 유형(모든 항목은 동일한 데이터 유형이어야 함) 및 예약어 new를 사용합니다. 이 문장의 끝에는 필수 괄호가 있습니다. 

메모

예약어는 특별한 의미를 가지며 변수 이름으로 사용할 수 없는 프로그래밍 단어입니다. new, string, false, null 등과 같은 단어는 변수에 동일한 이름을 지정하려고 하면 구문 오류가 발생합니다.

Empty List 선언

  1. 개발자 콘솔에서 디버그 | 익명 실행 창을 엽니다 .
  2. 이 코드를 복사하여 Apex 코드 입력 창에 붙여넣습니다.//Declare the groceries list
    //Declare the groceries list
    List<String> groceries = new List<String>();
      
    //The output for this statement is an empty list, ().
    System.debug('Groceries Value: ' + groceries);
  3. 선택 열기 로그 확인란을 선택하고 다음을 클릭합니다 실행 . 실행 로그가 열리고 코드 실행 결과가 표시됩니다.
  4. 창 하단에서 디버그 전용 확인란을 선택합니다 .

코드를 실행했을 때 출력이 ()임을 눈치챘을 것입니다. 목록에 아무것도 추가하지 않았기 때문에 비어 있습니다. 

 

groceries목록 을 선언할 때 항목을 추가할 준비가 된 단일 빈 공간을 만들었습니다. 

설정된 크기로 목록 선언

목록의 길이를 정확히 알고 있다면 목록을 선언할 때 크기를 설정할 수 있습니다. 다음과 같이 데이터 유형 뒤에 대괄호 [ ] 안에 크기를 포함하여 이를 수행합니다. 

메모

Apex에서 목록을 선언하는 방법에는 여러 가지가 있습니다. 이 예에서는 목록 크기를 설정하기 위해 배열 표기법  사용 합니다.

이 코드는 식료품이라는 문자열 목록을 선언하고 크기를 4개의 문자열로 설정합니다. 빈 식료품 목록은 다음과 같습니다.

항목의 순차 위치는 인덱스라고 하는 숫자입니다. 인덱스는 항목을 참조하는 방법입니다. 아마도 숫자 1부터 계산하는 법을 배웠을 것입니다. 그러나 많은 프로그래밍 언어에서 계산은 숫자 0부터 시작합니다! 이제 Apex 코드를 작성할 때 목록이 다음과 같이 표시됩니다. 

  1. 설탕
  2. 우유

목록의 특정 항목을 가리키는 데 사용하는 인덱스는 차의 경우 인덱스 0, 설탕의 경우 인덱스 1, 꿀의 경우 인덱스 2 등입니다. 

다음과 같이 색인(목록 내 위치)으로 목록의 특정 항목을 참조합니다.

  1. 개발자 콘솔에서 디버그 | 익명 실행 창을 엽니다 .
  2. 이 코드를 복사하여 Apex 코드 입력 창에 붙여넣습니다.
    String[] groceries = new String[4];
    System.debug('Initialized groceries: ' + groceries);
      
    System.debug('Item 0: ' + groceries[0]);
  3. 선택 열기 로그 확인란을 선택하고 다음을 클릭합니다 실행 . 실행 로그가 열리고 코드 실행 결과가 표시됩니다.
  4. 창 하단에서 디버그 전용 확인란을 선택합니다 .

목록의 첫 번째 항목 값이 null입니다. 목록에 몇 가지 항목을 추가해 보겠습니다.

Initialize a List

목록을 초기화하는 것은 목록에 초기 값을 할당하는 것입니다. 목록에 항목을 추가하는 방법에는 두 가지가 있습니다.

  1. 목록을 선언하고 초기화합니다.
    //Sets the first item in the list to 'Tea'
    List<String> groceries = new List<String>{'Tea'}; 
  2. 빈 목록을 선언하고 나중에 값을 추가하십시오.
    List<String> groceries = new List<String>();
    groceries.add('Tea');

목록 선언 및 초기화

값으로 목록을 초기화하는 구문은 빈 목록을 선언하는 것과 유사합니다. 차이점은 괄호( ( )) 를 사용하는 대신 중괄호( { })를 사용 하여 값을 추가한다는 것입니다. 

  1. 개발자 콘솔에서 디버그 | 익명 실행 창을 엽니다 .
  2. 이 코드를 복사하여 Apex 코드 입력 창에 붙여넣습니다.
    //Declare the groceries list
    List<String> groceries = new List<String>{'Tea','Sugar','Honey','Milk'};
      
    //The output for this statement is Tea, Sugar, Honey, Milk
    System.debug('Groceries: ' + groceries);
  3. 선택 열기 로그 확인란을 선택하고 다음을 클릭합니다 실행 . 실행 로그가 열리고 코드 실행 결과가 표시됩니다.
  4. 창 하단에서 디버그 전용 확인란을 선택합니다 .

빈 목록을 선언하고 나중에 값 추가

그러나 나중에 항목을 추가하려면 어떻게 해야 합니까? Apex는 목록으로 작업할 수 있는 방법을 제공합니다. add 메서드를 사용하여 식료품 목록에 식료품 항목을 추가해 보겠습니다.

  1. 개발자 콘솔에서 디버그 | 익명 실행 창을 엽니다 .
  2. 이 코드를 복사하여 Apex 코드 입력 창에 붙여넣습니다.
    //Create the groceries list
    List<String> groceries = new List<String>();
      
    //The output for this statement is null
    System.debug('Groceries: ' + groceries);
      
    //Use the add method to add an element to the list
    groceries.add('Tea');
    groceries.add('Sugar');
    groceries.add('Honey');
    groceries.add(2, 'Milk');
      
    //The output for this statement is Tea, Sugar, Milk, Honey
    System.debug('Groceries: ' + groceries);
  3. 선택 열기 로그 확인란을 선택하고 다음을 클릭합니다 실행 . 실행 로그가 열리고 코드 실행 결과가 표시됩니다.
  4. 창 하단에서 디버그 전용 확인란을 선택합니다 .

groceries와 사이에 점(".")을 add보셨나요? Apex는 점 표기법을 사용합니다. 점 표기법에는 여러 가지 용도가 있습니다. 8행에서 add(Apex가 제공하는) 메소드를 groceries목록에 점으로 연결하여 항목(Tea)을 목록에 추가합니다.

11행은 특정 인덱스(위치)에 항목을 삽입하여 목록에 항목을 추가하는 또 다른 방법을 보여줍니다. 

Apex 코드로 계속 작업하면서 사용할 방법을 결정하는 방법을 배웁니다. 그러나 이 단원에서 배우는 기본 사항은 시작하는 데 도움이 될 수 있습니다. 

목록 이해하기

목록에 항목을 추가하는 다른 방법은 약간 다른 결과를 생성합니다. 때로는 예상치 못한 결과. 이 운동을 시도하십시오.

  1. 개발자 콘솔에서 디버그 | 익명 실행 창을 엽니다 .
  2. 이 코드를 복사하여 Apex 코드 입력 창에 붙여넣습니다.
    String[] groceries = new String[4];
    System.debug('Groceries: ' + groceries);
      
    groceries.add('Tea');
    groceries.add('Sugar');
    System.debug('Added 2 items: ' + groceries);
      
    groceries.add(1, 'Honey');
    System.debug('Added Honey in index 1: ' + groceries);
      
    System.debug('Item 0: ' + groceries[0]);
  3. 선택 열기 로그 체크 박스를 클릭 실행 . 실행 로그가 열리고 코드 실행 결과가 표시됩니다.
  4. 창 하단에서 디버그 전용  확인란을 선택합니다 .

Interesting results::

4행과 5행에 두 개의 문자열을 추가할 때 인덱스를 지정하지 않았기 때문에 Tea와 Sugar가 목록 끝에 추가되어 목록 크기가 4개 문자열에서 6개 문자열로 늘어났습니다. 

8행에서 Honey에 대한 인덱스 1을 명시적으로 지정했는데 왜 Honey가 목록의 첫 번째 항목이 아닌가요? 프로그래밍할 때 항상 1 대신 0부터 계산을 시작한다는 것을 기억하십시오. 11행에서 목록의 첫 번째 인덱스는 현재 null값을 포함하는 0 입니다. 

코드를 작성하는 것은 수학 문제를 푸는 것과 매우 유사합니다. 

하나의 방정식이 있지만 한 가지를 수행하는 방법은 너무 많습니다. 

이 단원에서는 Apex에서 목록으로 작업하는 방법이 두 가지 이상임을 배웠습니다. 목록을 선언하든, 목록을 초기화하든, 목록의 특정 값을 참조하든, 수행 방법은 사용자의 선택입니다. 너무 많은 옵션? 걱정하지 마세요. Apex에 익숙해지면 다양한 방식으로 시도해 보면 어떤 방식이 어떤 상황에서 가장 잘 작동하는지 더 많이 이해하게 될 것입니다.

Quiz

1. What is the code necessary to create a new list named "sports" with three strings?

A.String[] sports = new String[3];

B.sports = new String[3];

C.new String[3] = String sports;

D.New String[] sports = String[3];

 

2. Which line of code refers to the item named Golf in this list initialization statement: List<String> sports = new List<String>{'Soccer', 'Baseball', 'Golf', 'Tennis'}; ?

A.sports[0];

B.sports[4];

C.sports[1];

D.sports[2];

 

Control Data Flow

학습 목표

이 단원을 완료하면 다음을 수행할 수 있습니다.

  • 비교 연산자의 사용법을 나열하십시오.
  • switch 문과 if-else 문의 차이점을 설명합니다.

우리의 일상 생활에는 항상 결정해야 할 사항이 있습니다. 나는 무엇을 입는가? 나는 무엇을 먹을까? 왼쪽으로 가야 하나요 오른쪽으로 가야 하나요? 코드를 작성할 때도 마찬가지입니다. 1단원, 특히 2단계에서 Teatime 의사 코드를 다시 생각해 보십시오.

Boil water in a Tea Kettle
Fill Kettle with Water
Switch Kettle On
Wait for Water to Boil

 

흠… 모든 것이 꽤 정확해 보이죠? 물을 끓이기 위해 주전자에 물을 채우고 주전자를 켜고 물이 끓기를 기다립니다. 그러나 주전자에 이미 물이 있다면 어떻게 될까요? 주전자가 가득 차면? 물은 얼마나 오래 끓여야 하나요?

표현식 및 표현식 연산자

우리는 결정을 내리기 전에 종종 비교를 합니다. 이것보다 더 큰가요? 이거랑 동급인가요? 개발자는 종종 애플리케이션에서 결정을 내리기 전에 값을 비교합니다. 코드에서 표현식 연산자를 두 표현식 사이에 배치하여 두 표현식을 비교합니다. 

표현식은 평가될 때 단일 값을 생성하는 코드 조각입니다. 이 모듈의 목적을 위해 표현식은 리터럴 값(예: 12), 변수(예: numberOfTeaCups) 또는 수학 연산(예: 7 x 4)일 수 있습니다.

표현식 연산자는 두 값 간의 동등성을 비교하거나 표시합니다. 비교 문은 표현식 연산자로 구분된 두 개의 표현식으로 구성되며 true 또는 false의 부울 값을 생성합니다. 

비교 연산자

운영자설명통사론결과

< 미만 1 < 2 진실
<= 이하 1 <= 2
3 <= 3
진실
== 동일 10 == 10 진실
!=
<>
같지 않음 10 != 0
10 <> 11
진실
> 보다 큰 11 > 10 진실
>= 크거나 같음 40 >=10
40 >= 40
진실

같음 연산자에 두 개의 등호 가 있는 이유는 무엇 입니까? 이 문에서 단일 등호를 사용했음을 기억하십시오.

하나의 등호( =)는 할당 연산자입니다. 가치를 부여합니다. 두 개의 등호( ==)는 비교 연산자입니다. 두 값을 비교하여 같은지(true) 같지 않은지(false) 확인합니다.

연산자는 알려진 값을 변수와 비교하거나 두 개의 다른 변수 값을 비교할 때 특히 유용합니다.

Integer numberOfTeaCups = 2;
numberOfTeaCups == 3;  //false
numberOfTeaCups == 2; //true

 

정수 변수와 문자열 변수의 예를 보았습니다. 비교 결과를 보유하는 부울 변수를 생성할 수도 있습니다.

Integer numberOfTeaCups = 2;
Boolean result = numberOfTeaCups > 3; // 2 > 3 = false

1행은 numberOfTeaCups 변수를 2로 설정합니다.

2행은 이라는 부울 유형의 변수를 만들고 resultnumberOfTeaCups 변수 값을 숫자 3과 비교하고 비교 결과(false)를 result변수에 할당합니다 

 

비교는 한 항목이 다른 항목과 어떻게 관련되어 있는지 결정하는 데 도움이 되지만 실제로 가장 빛나는 위치는 조건문 내에서 결정을 내리는 데 도움이 됩니다.

조건문(Conditional Statements)

개발자는 조건문 내의 표현식을 사용하여 프로그램에서 평가하거나 테스트할 하나 이상의 조건을 지정하는 의사 결정 구조를 만듭니다. 와, 입이 떡 벌어졌습니다. 분해해 보겠습니다.

조건문은 둘 이상의 옵션을 설정합니다. Process Builder에서 기준을 만든 적이 있다면 조건문을 사용한 적이 있을 것입니다. 예를 들어 "주와 캘리포니아가 같으면 목록 보기에 레코드를 표시합니다"는 조건문입니다. "State equals California"는 조건이고 "목록 보기에 레코드 표시"는 조건이 true인 경우에만 프로그램이 수행하는 작업입니다. 이 예에서 두 가지 옵션은 레코드 표시(명시적)와 레코드를 표시하지 않음(묵시적)입니다.

If-Else 문

Apex에서 일반적으로 사용되는 조건문은 if-else명령문입니다.

if(condition is true) {
    //do this
} else {
    //do this
}

1행은 조건을 정의합니다(괄호 안에 작성).
2행에는 1행의 조건이 참인 경우 실행할 코드가 포함되어 있습니다.
3행은 두 번째 옵션인 else 옵션을 소개합니다.
4행에는 1행의 조건이 거짓인 경우 실행할 코드가 포함되어 있습니다.

Apex에서는 조건문을 중괄호로 묶습니다 { }. . 여는 중괄호( {)는 닫는 중괄호( }) 와 쌍을 이루어야 합니다 . 코드 블록에 여는 중괄호가 있고 닫는 중괄호가 없으면 오류가 발생합니다.

Teatime 의사 코드에서 조건문을 사용하여 차 주전자의 수위를 확인하고 수위를 기반으로 다음에 수행할 작업을 결정하겠습니다.

 

  1. 개발자 콘솔에서 디버그 | 익명 실행 창을 엽니다 .
  2. 이 코드를 복사하여 Apex 코드 입력 창에 붙여넣습니다.
    String waterLevel = 'full'; /*This variable keeps track of the water level status: full or empty*/
      
    if(waterLevel == 'empty') {
        System.debug('Fill the tea kettle');
        waterLevel = 'full'; /*Once the tea kettle is filled the variable is changed to full*/
    } else {
        System.debug('The tea kettle is full');
    }
  3. 선택 열기 로그 확인란을 선택하고 다음을 클릭합니다 실행 . 실행 로그가 열리고 코드 실행 결과가 표시됩니다.
  4. 창 하단에서 디버그 전용 확인란을 선택합니다 .

1행에서 waterLevel 변수를 로 초기화했습니다 full. 일반적으로 코드의 변수 값은 사용자가 입력하거나 코드 자체에 지정되지 않은 다른 데이터에서 파생됩니다. Teatime 예제에서는 주전자의 센서에서 물리적 데이터를 가져와 수위를 결정합니다. 이러한 데이터를 사용할 수 없는 경우 개발자는 코드를 실행하고 테스트할 수 있도록 코드에 값을 직접(일시적으로) 설정합니다. 코드에서 값을 설정하는 것을 하드 코딩이라고 합니다. 테스트 목적으로 waterLevel 변수 값을 하드코딩했습니다 full. 해당 값이 이미 설정되어 있으므로 ifwaterLevel이 시작되지 않기 때문에 첫 번째 명령문(3행)은 실행되지 않습니다 empty.

코드는 waterLevel 변수가 와 같은지 확인합니다 empty. 우리가 waterLevel을 하드 코딩 때문에 full의 if문 조건은 false입니다.  if조건이 거짓의 else코드 블록은 실행됩니다. 

우리 코드는 현재 두 가지 조건을 처리합니다. 수위는 full이고 수위는 empty입니다. 하지만 그것만이 유일한 가능성은 아니겠죠? 주전자가 부분적으로 가득 찼을 수 있습니다. 두 가지 이상의 가능성을 어떻게 처리합니까? 

If-Else If 문

두 가지 이상의 가능성을 처리하기 위해 if-else if 문을 사용합니다. if-else if 문은 마지막 else 조건 앞에 다른 if 조건을 추가합니다. 실제 사례를 살펴보겠습니다.

  1. 개발자 콘솔에서 디버그 | 익명 실행 창을 엽니다 .
  2. 이 코드를 복사하여 Apex 코드 입력 창에 붙여넣습니다.
    String waterLevel = 'half';
      
    if(waterLevel == 'empty') {
        System.debug('Fill the tea kettle');
        waterLevel = 'full';
    } else if(waterLevel == 'half') {
        System.debug('Fill the tea kettle');
        waterLevel = 'full';
    } else { /*This statement only runs if line 2 and line 5 result in false.*/
        System.debug('The tea kettle is full');
    }
  3. 선택 열기 로그 확인란을 선택하고 다음을 클릭합니다 실행 . 실행 로그가 열리고 코드 실행 결과가 표시됩니다.
  4. 창 하단에서  디버그 전용 확인란을 선택합니다 .

코드를 테스트할 때 waterLevel1행  변수 값을 변경하십시오. 디버그 로그의 출력에 변경 사항이 반영됩니다. 세 가지 값( half, full, 및 empty.

첫 번째 조건이 가장 일반적인 조건이 되도록 조건문을 정렬합니다. 이 배열은 코드 블록이 실행될 때마다 실행되는 코드의 양을 줄입니다. Teatime 예제에서 주전자는 비어 있을 가능성이 높으므로 해당 조건을 먼저 지정합니다. 차 주전자가 가득 찼을 가능성이 없으므로 마지막으로 그 상태를 확인합니다. 

Switch 문

if-else 문에 대한 보다 효율적인 대안은 switch 문입니다. switch 문은 값 집합을 지정하고 표현식을 테스트하여 해당 값 중 하나와 일치하는지 확인합니다. 다음과 같이 표시됩니다.

switch on expression {
    when value1 {
        //code block 1
    }
    when value2 {
        //code block 2
    }
    when else { //if none of the previous values apply
        //code block 3
    }
}

 

switch 문에서 when예약어 뒤에 하나 이상의 값이 있을 수 있습니다 .

switch on expression {
    when value1 { //single value
        //code block 1
    }
    when value2, value3 { //multiple values
        //code block 2
    }
}

 

Teatime 의사 코드에 스위치를 적용해 보겠습니다.

  1. 개발자 콘솔에서 Debug | Open Execute Anonymous Window. .
  2. 이 코드를 복사하여 Apex 코드 입력 창에 붙여넣습니다.
    String waterLevel = 'empty';
      
    //option 1 using a single value
    switch on waterLevel {
        when 'empty' {
            System.debug('Fill the tea kettle');
        }
        when 'half' {
            System.debug('Fill the tea kettle');
        }
        when 'full' {
            System.debug('The tea kettle is full');
        }
        when else {
            System.debug('Error!');
        }
    }
      
    //option 2 using multiple values
    switch on waterLevel {
        when 'empty', 'half' { //when waterLevel is either empty or half
            System.debug('Fill the tea kettle');
        }
        when 'full' {
            System.debug('The tea kettle is full');
        }
        when else {
            System.debug('Error!');
        }
    }
  3. 선택 열기 로그 확인란을 선택하고 다음을 클릭합니다 실행 . 실행 로그가 열리고 코드 실행 결과가 표시됩니다.
  4. 창 하단에서 디버그 전용 확인란을 선택합니다 .

논리 연산자

두 개 이상의 조건을 처리하는 방법을 살펴보았습니다. 이제 하나의 조건이 둘 이상의 값으로 충족될 수 있는 경우 어떻게 해야 합니까? 

논리 연산자

Operator OR AND
Operator symbol || &&
Pseudocode If X or Y, do this.
Otherwise, do that.
If X and Y, do this.
Otherwise, do that.
Apex code if(X || Y) {
//do this
} else {
//do this
}
if(X && Y) {
//do this
} else {
//do this
}

논리 연산자 and를 or사용하면 조건이 참인지 거짓인지를 결정하기 위해 둘 이상의 값을 확인하는 코드를 작성할 수 있습니다. and운영자는 모든 값이 조건을 만족시키기에 해당하는 것을 요구한다. or연산자 값 중 적어도 하나의 조건을 만족하는 진정한 것을 요구한다.

논리 연산자 평가

논리 연산자통사론설명

&& (AND) X && Y

System.debug(true && true); // true

System.debug(false &&  true); //false

System.debug(true && false); // false

System.debug(false && false); //false
X and Y are Boolean values. If both X and Y are true, then the expression is true. Otherwise the expression is false.
|| (OR) X || Y

System.debug(true || true);  //true

System.debug(false || true); //true

System.debug(true || false); //true

System.debug(false || false); //false
X and Y are Boolean values. If both X and Y are false, then the expression is false. Otherwise the expression is true.

논리 연산자를 사용해 봅시다. 다음은 if-else if 문으로 작성된 코드입니다.

String waterLevel = 'half';
  
if(waterLevel == 'empty') {
    System.debug('Fill the tea kettle');
    waterLevel = 'full';
} else if(waterLevel == 'half') {
    System.debug('Fill the tea kettle');
    waterLevel = 'full';
} else { //This statement only runs if line 3 and line 6 result in false.
    System.debug('The tea kettle is full');
}

 

4-5행과 7-8행을 보십시오. 그들은 동일합니다. 우리는 이것을 중복 코드라고 부릅니다. 중복 제거는 코드를 더 읽기 쉽고 이해, 디버그 및 유지 관리하기 쉽게 만들기 때문에 모범 사례입니다. 우리 코드는 waterLevel이 empty또는 half. emptyand half를 하나의 조건 으로 결합하여 이 코드를 단순화할 수 있습니다 . or값( empty또는 half)이 참일 때 조건이 충족되도록 연산자를 사용 합니다.

  1. 개발자 콘솔에서 디버그 | 익명 실행 창을 엽니다 .
  2. 이 코드를 복사하여 Apex 코드 입력 창에 붙여넣습니다.
    String waterLevel = 'half';
      
    if(waterLevel == 'empty' || waterLevel == 'half') {
        System.debug('Fill the tea kettle');
        waterLevel = 'full';
    } else { //This statement only runs if line 3 false.
        System.debug('The tea kettle is full');
    }
  3. 선택  열기 로그 체크 박스를 클릭 실행 . 실행 로그가 열리고 코드 실행 결과가 표시됩니다.
  4. 창 하단에서 디버그 전용 확인란을 선택합니다 .

글쎄, 그것을 봐. 코드 중복성을 제거했습니다. 논리 연산자( &&및 ||)를 사용하는 것은 중복 코드를 제거하거나 줄이고 가독성을 향상시키는 효과적인 방법입니다.

Keep Your Code Clean

프로그래밍에서는 종종 무언가를 수행하는 방법이 두 가지 이상입니다. 

예를 들어, switch 문 또는 if-else 문을 사용하여 동일한 결과에 도달할 수 있습니다. 

사용할 문 유형을 선택할 때 고려해야 할 중요한 사항은 각각이 코드의 가독성에 미치는 영향입니다. 

코드 작업을 계속하면서 코드를 깨끗하게 유지하는 더 많은 방법을 배웁니다. 

지금은 코드를 읽고 이해하기 쉽게 만드는 데 집중하세요. 

 

Quiz

1. If Integer i = 44, what is the value of the result variable in the following statement? Boolean result = i < 20;

A.true

B.44

C.false

D.20

 

2. How many choices are possible when using one if-else statement?

A.1

B.2

C.0

D.A and B

Loops 제어문 사용

학습 목표

이 단원을 완료하면 다음을 수행할 수 있습니다.

  • while 루프와 do-while 루프를 구별하십시오.
  • 증가 및 감소 연산자를 사용하여 코드 실행을 제어합니다.

Teatime 예제에서 우리는 가장 가까운 친구들과 나누기 위해 차 한 잔을 만들었습니다. 하지만 100명에게 차를 대접해야 한다면 어떻게 될까요? 모든 사람이 서비스를 받을 때까지 동일한 단계를 계속 반복해야 합니다. 너무 많은 중복 코드가 될 것 같지 않습니까? 루프가 유용한 곳입니다.

루프는 특정 조건이 충족될 때까지 반복되는 코드 블록입니다. Teatime 코드의 경우 반복해야 할 단계를 검토해 보겠습니다.

Add Tea and Sugar to Teacup
Pour Tea in Teacup
Put 1 teaspoon of Sugar in Teacup
Stir Tea in Teacup
Serve Tea to a Friend

 

반복되는 단계를 루프에 추가할 수 있습니다. : 에이펙스는 세 개의 루프 코드 방식이 while, do-while그리고 for루프를. 지금은 while및 do-while루프에 중점을 둘 것 입니다. 이름 while과 do-while루프가 매우 유사합니다. 둘 다 특정 조건이 충족되는지 확인합니다. 차별화 요소는 조건이 충족되었는지 확인할  입니다. While루프 는 루프가 시작 되기 전에 조건 do-while 확인 하고 루프가 완료된 후에 루프를 확인합니다 

정말 작은 디테일 같죠? 실제로 그 영향은 꽤 큽니다. 

그것을 이런 식으로 생각하십시오 do-while루프는 항상 적어도 한 번 실행됩니다. while루프는 조건에 따라 실행되지 않을 수 있습니다. 

while 루프

while루프는 조건이 충족 된 경우 확인을 시작합니다. 조건이 참이면 뭔가를 합니다. 거짓이면 루프가 중지됩니다.

구문은 다음과 같습니다.

While(condition) { 
    //run this block of code 
}

whileTeatime 코드에 루프를 적용해 보겠습니다 

  1. 개발자 콘솔에서 디버그 | 익명 실행 창을 엽니다 .
  2. 이 코드를 복사하여 Apex 코드 입력 창에 붙여넣습니다.
    //Declare an Integer variable called totalGuests and set it to 100
    Integer totalGuests = 100;
      
    //Declare an Integer variable called totalAmountSugar and set it to 159 (number of teaspoons in a bag of sugar).
    Integer totalAmountSugar = 159;
      
    //Declare an Integer variable called totalAmountTea and set it to 35 (number of teabags).
    Integer totalAmountTea = 35;
      
    //Loop: Add a teaspoon of sugar and one tea bag to a tea cup. Serve until there is no sugar or tea left.
      
    While(totalGuests > 0) {
        System.debug(totalGuests + ' Guests Remaining');
        //check ingredients
        if(totalAmountSugar == 0 || totalAmountTea == 0) {
            System.debug('Out of ingredients! Sugar: ' + totalAmountSugar + ' Tea: ' + totalAmountTea);
            break; //ends the While loop
        }
      
        //add sugar
        totalAmountSugar--;
      
        //add tea
        totalAmountTea--;
      
        //guest served
        totalGuests--;
    }
  3. 선택 열기 로그  확인란을 선택하고 다음을 클릭합니다 실행 . 실행 로그가 열리고 코드 실행 결과가 표시됩니다.
  4. 창 하단에서 디버그 전용 확인란을 선택합니다 .

아니요, 그 --표시는 오타가 아닙니다. 사후 감소 연산자라고 합니다. "이 값에서 하나의 숫자를 빼십시오."라고 말하는 속기 방식입니다. 경우 totalAmountSugar, IS (159)와 동일한, 현재의 값만큼 감소를 totalAmountSugarIS (158)는 포스트 단위 연산자, 동일 ++값을 하나 개의 번호를 추가, 반대로한다.

정확히 무슨 일이 일어나고 있습니까? 우리의 주요 목표는 100명에게 차를 제공하는 것임을 기억하십시오. 손님을 대접할 때마다 각 재료( totalAmountSugar및 totalAmountTea) 의 1인분 과 손님( totalGuests)이 차감됩니다.  totalAmountSugar또는이 totalAmountTea0 (라인 15) 또는 (가)에 도달 totalGuests0 (라인 12) 루프 정지 및 아무도로 제공됩니다됩니다. 

do-while루프가 어떻게 작동 하는지 살펴보겠습니다 .

while 루프 수행

do-while루프는 조건이 테스트되기 전에 한 번 뭔가를 할 수있는 코드를 할 수 있습니다.

do-while루프는 한번의 작업을 수행하는 시작한다. 다음으로 조건을 확인합니다. 조건이 참이면 작업을 다시 실행합니다. 거짓이면 루프가 중지됩니다.

구문을 살펴보십시오.

Do {
    //run this block of code
} while(condition);

 

복사

  1. 개발자 콘솔에서 디버그 | 익명 실행 창을 엽니다 .
  2. 이 코드를 복사하여 Apex 코드 입력 창에 붙여넣습니다.
    //Declare an Integer variable called totalGuests and set it to 100
    Integer totalGuests = 100;
      
    //Declare an Integer variable called totalAmountSugar and set it to 159 (number of teaspoons in a bag of sugar).
    Integer totalAmountSugar = 159;
      
    //Declare an Integer variable called totalAmountTea and set it to 35 (number of teabags).
    Integer totalAmountTea = 35;
      
    do {
        //deduct sugar serving
        totalAmountSugar--;
      
        //deduct tea serving
        totalAmountTea--;
      
        //deduct guest
        totalGuests--;
      
        System.debug(totalGuests + ' Guests Remaining!');
      
        //check ingredients
        if(totalAmountSugar == 0 || totalAmountTea == 0) {
            System.debug('Out of ingredients!');
            break; //ends the While loop
        }
      
    } while(totalGuests > 0);
  3. 선택 열기 로그 확인란을 선택하고 다음을 클릭합니다 실행 . 실행 로그가 열리고 코드 실행 결과가 표시됩니다.
  4. 창 하단에서 디버그 전용 확인란을 선택합니다 .

여러 방법으로 변수를 선언하고, 값을 인스턴스화하고, 목록을 만들고, 데이터를 반복했습니다. 축하합니다! Apex 소개를 완료했으며 코드에 대해 더 많이 이해하고 있습니다.

Quiz

1. Integer x equals 1. While x < 2, a System.debug statement displays x and increments x by 1 (x++). What is the output in the logs?

A.1

B.2

C.1 2

D.1 2 3

 

2. True or false: A while loop starts by verifying a condition first.

A.True

B.False

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

반응형