나는 안드로이드 용으로 처음으로 응용 프로그램을 만들고 Java로 내 첫 번째 응용 프로그램을 만드는 중입니다. 열거 형과 배열 목록의 차이점을 파악할 수없는 것 같습니다. 나는 이미지 파일과 답변으로 저장된 질문에 플래시 카드가있는 간단한 플래시 카드 응용 프로그램을 작성 중입니다. 난 무작위로 난이도의 진보적 인 순서로 flashcards를 표시 할 수 있기를 바랍니다. 배열과 열거 형에 플래시 카드를 저장하면 어떤 이점이 있습니까?이미지를 배열 또는 열거 형으로 저장 : 어느 것이 더 낫습니까?
답변
enum과 ArrayList는 너무 멀리 정의되어 있으므로 명확하게 설명하기 위해 열거 형을 읽어야합니다.
열거 형은 한 가지를 설명하는 값의 미리 결정된 목록입니다. 나는이 모든 일의 상태에 대한 가능한 값을 정의 예를
enum Status {
Initialized,
InProgress,
Completed,
Failed
};
경우 등 상태 가능한 값의 짧은 목록과 같은 것들에 대한 열거 형을 사용합니다.
Flashcard 앱과 같이 두 가지를 조합하여 사용할 수 있다고 말하고 싶습니다. 플래시 카드를 나타내는 클래스가 필요하고 Flashcard의 이미지와 Flashcard의 아이디어를 구분해야합니다. 이미지는 실제로 Flashcard의 한 속성입니다.
public class Flashcard {
public enum Difficulty
{
Easiest,
Easy,
MediumEasy,
Medium,
MediumDifficult,
Difficult,
MostDifficult
}
String question;
String answer;
String pathToImageFile;
Difficulty difficulty;
}
그래서,이 클래스는 객체와 같은 플래시 카드를 나타낼 것 :
여기에 모두 사용하는 예입니다. 그리고 당신의 앱은이 클래스의 ArrayList (ArrayList<Flashcard>
)를 생성하고 당신의 활동에 특정한 난이도 레벨을위한 인스턴스를 제공 할 수 있습니다.
나는 실제로 할 일은 난이도 수준에서 사용 및 정수를 사용하므로 열거 형 값의 거대한 목록을 유지 관리하고 업데이트하는 데 더 많은 어려움을 가질 수있을뿐 아니라 더 어렵고 덜 어려운 것 사이의 명확한 개념을 가질 수 있습니다. enum의 일반적인 사용법을 예제로 보여 드리고자합니다.
여기 열거의 위키 피 디아 링크입니다 :는 HashMap을 사용하는 아이디어에 대한 http://en.wikipedia.org/wiki/Enumerated_type
배열에 이미지 정보를 저장합니다. 열거 형은 동적으로 채울 수 있지만 열거 형은 동적으로 채울 수 있습니다.
배열은 나중에 쉽게 사용할 수있는 일련의 조작 방법을 제공합니다.
당신은 같은 구조를 사용하여, 당신은 또한 당신이 진보적 인 순서로 카드를 표시하는 것이 쉽게 할 것이다지도의 키를로 난이도를 가진 수는 HashMap를 작성하는 경우 :
의 HashMap < 정수 difficultyLvl는 ArrayList를 < 카드> cardsOnSameDifficultyLvl>
는 ArrayList를 사용하고 HashMap의은/응용 프로그램을 쉽게 추가 할 수 있도록 런타임에/편집 카드를 삭제하고 구조가 텍스트 파일에서 채워, 또는 디렉토리/파일 이름 구조에서 할 수 있습니다. Enums를 사용하면 응용 프로그램의 비즈니스 논리에있는 모든 카드가 하드 코드되어 유지 관리가 어려워집니다.
감사합니다! 나는 그것에 대해 읽어야 할 것이다! – jtagster
- 1. 스레드 또는 JMS 어느 것이 더 낫습니까?
- 2. 어느 것이 실제 버블 정렬이고 어느 것이 더 낫습니까?
- 3. 속도 최적화 - 어느 것이 더 낫습니까?
- 4. iPhone과 Android를 비교하면 어느 것이 더 낫습니까?
- 5. asp.net 2.0에서 어느 것이 더 낫습니까?
- 6. .NET에서 Remoting 또는 WebServices 중 어느 것이 더 낫습니까?
- 7. PyInstaller 또는 cx_Freeze 중 어느 것이 더 낫습니까?
- 8. Apache2 : mod_wsgi 또는 mod_python 중 어느 것이 더 낫습니까?
- 9. WPF - 어느 것이 더 낫습니까? 스타일 또는 사용자 정의?
- 10. 파이썬, del 또는 delattr에서 어느 것이 더 낫습니까?
- 11. WPF 또는 GTK? 어느 쪽이 더 낫습니까?
- 12. 어느 쪽이 더 낫습니까? URLReWriter.net 또는 URLReWriting.NET
- 13. 어느 것이 더 빠릅니까?
- 14. 어느 것이 목록 항목에 사용하는 것이 더 낫습니까?
- 15. 어느 쪽이 Java에서 더 낫습니까?
- 16. 열거 형 대 캐시? 어떤 것이 더 낫습니까?
- 17. 어느 쪽이 더 낫습니까? DOM 객체를 객체 배열 또는 직접 DOM 조작으로 저장?
- 18. HashMap v/s 데이터베이스. 어느 것이 더 낫습니까?
- 19. Django 이벤트 앱 중 어느 것이 더 낫습니까?
- 20. 어느 쪽이 더 낫습니까? 개체 필터링에 대한 DataTable.Select() 또는 Linq?
- 21. 쿼리 용 PHP 클래스 중 어느 것이 더 낫습니까?
- 22. 캐스팅 (int?) null과 새 int?() - 어느 것이 더 낫습니까?
- 23. 해독 성과 효율성 어느 것이 더 낫습니까? 너피, 튜플, 등?
- 24. 51Degrees.mobi Foundation 대 WURFL .NET API- 어느 것이 더 낫습니까?
- 25. Team City 대 CruiseControl.net- 어느 것이 더 낫습니까?
- 26. Google지도는 사용되지 않습니다. 이제 뭐 ? 어느 것이 더 낫습니까?
- 27. 프로젝트 참조 대 DLL 참조 - 어느 것이 더 낫습니까?
- 28. Flex 또는 ActionScript를 배우는 것이 얼마나 쉽고 어느 것이 더 낫습니까?
- 29. Mysql Trigger 또는 간단한 Insert 문 .. 어느 것이 기록을 로그하는 것이 더 낫습니까?
- 30. 어느 쪽이 창문에 더 낫습니까? pthreads 또는 CreateMutex?
아마도 플래시 카드 주제 (지리, 음악, 정치 등)가 열거 형의 더 나은 후보가 될 것입니까? –
고마워요! 지금 열거 형의 사용법이 훨씬 나아 졌음을 이해합니다. 나는 아마 둘 다 사용할 것이다! – jtagster