content: package com.alibaba.fastjson.parser.deserializer;
  
  import java.lang.reflect.Type;
  import java.util.ArrayList;
  import java.util.Map;
  
  import com.alibaba.fastjson.parser.DefaultJSONParser;
  import com.alibaba.fastjson.parser.JSONLexer;
  import com.alibaba.fastjson.parser.JSONToken;
  import com.alibaba.fastjson.parser.ParserConfig;
  import com.alibaba.fastjson.util.FieldInfo;
  
  public class ArrayListStringFieldDeserializer extends FieldDeserializer {
  
      public ArrayListStringFieldDeserializer(ParserConfig mapping, Class<?> clazz, FieldInfo fieldInfo){
          super(clazz, fieldInfo);
  
      }
  
      public int getFastMatchToken() {
          return JSONToken.LBRACKET;
      }
  
      @Override
      public void parseField(DefaultJSONParser parser, Object object, Type objectType, Map<String, Object> fieldValues) {
          ArrayList<Object> list;
  
          final JSONLexer lexer = parser.getLexer();
          if (lexer.token() == JSONToken.NULL) {
              lexer.nextToken(JSONToken.COMMA);
              list = null;
          } else {
              list = new ArrayList<Object>();
  
              ArrayListStringDeserializer.parseArray(parser, list);
          }
          if (object == null) {
              fieldValues.put(fieldInfo.getName(), list);
          } else {
              setValue(object, list);
          }
      }
  }
  