을; 테스트 코드가 포함되어 있습니다. 기본 패키지에 클래스 Main을 만들고 코드를 복사하여 실행하십시오.당신은 코드 오류 메시지를 얻을 수있는 수준의 오류에서 방법은 GetError (문자열 코드)를 사용할 수 있습니다 :
import java.util.*;
public class Main {
public static void main(String[] args) {
for(String code : new String[]{"000", "001", "002", "003", "004", "005"}) {
System.out.println(Errors.getError(code));
}
}
}
class Errors {
static {
Errors.errors = new HashMap<String, Error>();
for(String[] error : new String[][]{
{"000", "1", "No error"},
{"001", "1", "Connection error"},
{"002", "1", "Error sending reversal or batch capture process"},
{"003", "1", "Error after authorization – message sent to host and answer received"},
{"004", "1", "Error sending message for authorization"},
{"005", "1", "Error receiving message from host"}
}) {
Errors.errors.put(error[0], new Error(error[0], error[1], error[2]));
}
}
private static Map<String, Error> errors;
public static String getError(String code) {
return Errors.errors.get(code).message;
}
private static class Error {
private String code;
private String position;
private String message;
public Error(String code, String position, String message) {
super();
this.code = code;
this.position = position;
this.message = message;
}
@Override
public String toString() {
return this.getClass().getSimpleName() + " | code: " + this.code + " | position: " + this.position + " | message: " + this.message;
}
}
}
출처
2012-07-04 11:41:01
Tom
열거 형을 사용하여 시도해보십시오. –
올바른 구조는 실제로 enum입니다. –
나는 적절한 구조가 열거 형이라고 말하지 않을 것이다. 이드는 상황에 전적으로 의존한다고 말한다. 특히 오류 코드가 문자열이라는 사실을 매우 분명하게 알았 기 때문에 일부 오류 코드에는 숫자가 아닌 문자가 포함되어있을 수 있습니다. –