클래스 노드 { INT (X); int로 Y를; } 공용 클래스 테스트 { 공공 정적 무효 메인 (문자열 []에 args) { 이 MyQueue <문자열> Q = 새로운 MyQueue 인 <문자열> (); q.push ( "XXX" ); q.push ( "XXX" ); q.push ( "XXX" ); q.push ( "你" ); q.push ( "真" ); q.push ( "666!" ); q.print (); 에서 System.out.println (Q. 이 MyQueue <T> { 공공 INT HIndex = 0 ; 공개 INT의 크기 = 0 ; 공개 INT MAXSIZE = 0 ; 공용 T 공간 []; @SuppressWarnings ( "체크" ) 공중 부울 푸시 (T를 t) { 경우 (MAXSIZE <= 사이즈) { MAXSIZE = MAXSIZE + ((MAXSIZE >> 1)> 1 (MAXSIZE >> 1) : 1 ); 온도 T [] = (T []) 새로운 개체 [MAXSIZE]; 위한 ( int로 0 = 1을, 나는 크기 <; ++ I) { 온도 [I] = 공간 [I]; } 공간 = 온도; } 공간 [크기 ++ =의 t; 반환 사실 ; } 공공 부울 팝업 () { 경우 (! {IsEmpty 함수 ()) HIndex ++ ; 크기 - ; } 반환 사실 ; } 공개 부울 IsEmpty 함수 () { 경우 (사이즈 == 0 ) { 반환 참 ; } 리턴 거짓 ; } 공개 부울 인쇄 () { 대 ( INT I = HIndex; 나는 크기 <; ++ I) { 에서 System.out.println (공간 [I]); } 반환 사실 ; } 공공 INT GetMaxSize는 () { 반환 MAXSIZE를; } }