빌어먹을 유형 변환For input string: "[Ljava.lang.String;@1352dda"

1698 단어 String
오늘 또 이 빌어먹을 문제를 만났으니, 그래도 메모해 두어라.
맵에서 값을 추출할 때 OBJECT 대상을 String으로 변환한 다음 인덱스로 변환하여 오류를 보고합니다
java.lang.NumberFormatException: For input string: "[Ljava.lang.String;@1352dda" at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48) at java.lang.Integer.parseInt(Integer.java:447) at java.lang.Integer.parseInt(Integer.java:497)
해석 후 WEB에서 전송된 맵 대상의 문자열이 수조로 변한 것을 발견하여 직접 가져오면'[Ljava.lang.String;유형;
 
이런 경우 도구 클래스를 다시 쓸 수 있는 tostring 방법
public static String toString(Object o){
        if (o instanceof String){
            return String.valueOf(o);
        }else if (o instanceof  Object[]){
            String str = "";
            for (Object obj : (Object[])o){
                str +=String.valueOf(obj);
            }
            return str;
        }
        return "";
    }

원하는 값을 얻을 수 있어요.

좋은 웹페이지 즐겨찾기