Programming Language/Java

Enum Class(enumeration) method

chaerlo127 2022. 4. 18. 00:49
728x90

ํ•™๊ต ์ˆ˜์—…์‹œ๊ฐ„์— GUI ๊ทธ๋ฆผํŒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ํ•˜๋ฉด์„œ Enumeration์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•˜๋ฉด์„œ, Enum Class method์— ๋Œ€ํ•œ ์ง€์‹์ด ๋ถ€์กฑํ•˜์—ฌ ๊ณต๋ถ€ํ•ด๋ณด๋Š” ์‹œ๊ฐ„์„ ๊ฐ–๊ณ ์ž ํ•œ๋‹ค.

 

panel.selectTool(EnumName.valueOf(e.getActionCommand()));

 

(↑ ์ด๊ฑฐ๋ถ€ํ„ฐ๊ฐ€ ์ดํ•ด๊ฐ€ ์•ˆ๊ฐ”์—ˆ์Œ;;)

 

 

โœจ ์—ด๊ฑฐ์ฒด(Enumeration Type)

  • ์žฅ์ 

1. ์—ด๊ฑฐ์ฒด๋ฅผ ๋น„๊ตํ•  ๋•Œ ์‹ค์ œ ๊ฐ’ + ํƒ€์ž… ์ฒดํฌ

2. ์—ด๊ฑฐ์ฒด์˜ ์ƒ์ˆซ๊ฐ’์ด ์žฌ์ •์˜๋˜๋”๋ผ๋„ ๋‹ค์‹œ compile ํ•„์š” ์—†์Œ

 

โœจ values()

ํ•ด๋‹น ์—ด๊ฑฐ์ฒด์˜ ๋ชจ๋“  ์ƒ์ˆ˜๋ฅผ ์ €์žฅํ•œ ๋ฐฐ์—ด์„ ์ƒ์„ฑํ•˜์—ฌ ๋ฐ˜ํ™˜

for(Rainbow rainbow; Rainbow.values()){
	System.out.println(rainbow);
}

 

 

โœจ valueOf()

์ „๋‹ฌ๋œ ๋ฌธ์ž์—ด๊ณผ ์ผ์น˜ํ•˜๋Š” ํ•ด๋‹น ์—ด๊ฑฐ์ฒด์˜ ์ƒ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜

panel.selectTool(EnumName.valueOf(e.getActionCommand()));

e.getActionCommand()์˜ String์ด EnumName์˜ name()[์ƒ์ˆ˜ ์ด๋ฆ„]๊ณผ ๊ฐ™์€ ์—ด๊ฑฐ์ฒด(Enum) ๋ฐ˜ํ™˜

 

โœจ ordinal()

 ํ•ด๋‹น ์—ด๊ฑฐ์ฒด ์ƒ์ˆ˜๊ฐ€ ์—ด๊ฑฐ์ฒด ์ •์˜์—์„œ ์ •์˜๋œ ์ˆœ์„œ(0๋ถ€ํ„ฐ ์‹œ์ž‘)๋ฅผ ๋ฐ˜ํ™˜

 ์ƒ์ˆ˜๊ฐ’ ์ž์ฒด๊ฐ€ ์•„๋‹Œ ์ˆœ์„œ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ๋ช…์‹ฌ

public enum Rainbow { RED, ORANGE, YELLOW, GREEN, BLUE, INDIGO, VIOLET }


int index = Rainbow.RED.ordinal(); // int index = 0;

 

 

+ finalize() -> ํ•ด๋‹น Enum class๊ฐ€ final ๋ฉ”์†Œ๋“œ๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์—†๊ฒŒ ๋จ.

 

 

 

 

[์ถœ์ฒ˜]

http://www.tcpschool.com/java/java_api_enum 

728x90