까지 내가 읽은 곳이면 어디서나 동적 이름을 가진 변수를 만들 수 없으므로 문제가 있는지 알아볼 수 있습니다.동적 이름 변수 java (구조체를 만드는 파서)
그것은이 방법으로 구성되어 있습니다 : 내 문제는 내가 영어로 법률을 포함하는 긴 텍스트를 구문 분석해야한다는 것입니다, 느릅 나무 계층 구조가
책
---- 장을
-------- 기사 또는
책
---- 제목
,-------- 장
------------- 기사 또는
책
---- 제목
-------- 장
------------- 섹션
----------------- 기사
당신이 그것을 sittuation에 depends 말할 수있는 구조가 달라져야합니다.
1 권 : :이 정보는이 같은 파일에서 가져온해야 책 한 제목 1 이름 : 이름 제목 하나 제 1의 이름 제 1 장 제 1의 제 1 조 제 2의 이름을 : 이름 제 2 조 제 2 장 : 이름 제 2 장 섹션 1 : 섹션의 이름 1 제 3 조 제 3 조 제목이 이름 : ... 제 1 장 : ... ... 2 권 : ... .... 제 3 권
당신은 아이디어를 얻습니다. 텍스트는 무작위로 분류를 포함 할 수 있습니다. 처음에는 모든 장, 모든 기사 등이 아닙니다.
이 제안 구현은 다음과 같습니다
public class Book {
private int id;
private List<Chapter> chapters;
private List<Title> titles;
// getters/setters/constructor
}
public class Chapter {
private int id;
private List<Section> section;
private List<Article> articles;
// getters/setters/constructor
}
public class Title {
private int id;
private List<Chapter> chapters;
// getters/setters/constructor
}
public class Section {
private int id;
private List<Article> articles;
// getters/setters/constructor
}
문제는 그 목록은 동적 인 방법으로 만들 수 있어야합니다. 파서가 책 번호 n에 새로운 챕터 목록이 필요하다고 말했을 때 작성해야합니다.
어떻게하면됩니까?
public interface Element {
List<Element> getSubElements();
}
그리고 예약 :
지도는 동적 변수를 만드는 것보다 최선의 선택이라고 생각합니다. – kosa
그래,이 솔루션에 대해 들었지만 맵이 어떻게 작동하는지 알지 못합니다. 여기서 중요한 점은 요소가 책인지, 구조에서 무엇이 어디서 있어야하는지 (어떤 책이 어디에 있는지, 어떤 장에 있는지 등)를 알아야한다는 것입니다. 나는 다음과 같은 메뉴를 만들어야한다. 책에 따라 장부와 장부 목록을 선택하고 그 다음에 기사의 텍스트를 보여줄 기사까지 선택한다. 귀하의 답변에 감사드립니다. – yafrack