请问在拦截器从获取表单提交过来的值这样写为什么错了

图片说明
图片说明
图片说明
求解释下 为什么会无法转换成字符串?

get(key)返回的是String[],所以你直接这样取参数就报异常了。建议如下试试:

Map param= ActionContext.getContext().getParameters();
 String value[] = (String[])param.get("a");
 String username = "";
 for(int i=0;i<value.length;i++)
 {
  username +=value[i];
 }

或者可以直接取数组的第一个:

  Map param= ActionContext.getContext().getParameters();
  String username = ((String[])map.get('a'))[0];

根据错误提示,不能被转换为字符串,建议作为空判断或对象类型判断