会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 133651个问题
JAVA 全系列/第六阶段:JavaWeb开发/Servlet技术详解(旧) 27092楼

老师,我这个遍历values值的方法看着没问题吧?为什么结果取不到值呢?

package com.bjsxt.servlet;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.*;

/**
 * 获取请求数据
 */
public class GetRequestDateServlet extends HttpServlet {
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String username = req.getParameter("username");
        String[] hobbies = req.getParameterValues("hobby");
        List<String> strings = Arrays.asList(hobbies);
        Enumeration<String> parameterNames = req.getParameterNames();
        List<String> keys = new ArrayList<>();
        while(parameterNames.hasMoreElements()){
            keys.add(parameterNames.nextElement());
        }
        Map<String, String[]> parameterMap = req.getParameterMap();
        PrintWriter out = resp.getWriter(); //将请求信息返回给客户端浏览器,使用IO流PrintWriter做输出
        out.println("<!DOCTYPE HTML PUBLIC \'-//W3C//DTD HTML 4.0 Transitional//EN\'>");
        out.println("<HTML>");
        out.println("<HEAD><TITLE>A Servlet</TITLE></HEAD>");
        out.println("<BODY>");
        out.println("Username:"+username+"<br/>");
        out.println("Hobbies:"+strings+"<br/>");
        out.println("Keys:"+keys+"<br/>");
        Iterator<Map.Entry<String,String[]>> iterator = parameterMap.entrySet().iterator();
        while (iterator.hasNext()){
            Map.Entry<String,String[]> entry = iterator.next();
            out.println("Keys:"+entry.getKey()+" Value:"+Arrays.asList(entry.getValue()+"<br/>"));
        }
        out.println("</BODY>");
        out.println("</HTML>");
        out.flush();
        out.close();
    }
}

image.png

JAVA 全系列/第六阶段:JavaWeb开发/Servlet技术详解(旧) 27094楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/常用类 27095楼
JAVA 全系列/第八阶段:Linux入门到实战/Maven 27096楼

老师,我的Users  类如下:


import java.util.Objects;

public class Users implements Comparable<Users>{
  private String usersname;
  private int  usersage;

    public Users(String yanggege, String s) {
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        Users users = (Users) o;
        return usersage == users.usersage &&
                Objects.equals(usersname, users.usersname);
    }

    @Override
    public int hashCode() {
        return Objects.hash(usersname, usersage);
    }

    public Users(String usersname, int usersage) {
        this.usersname = usersname;
        this.usersage = usersage;
    }

    public String getUsersname() {
        return usersname;
    }

    public void setUsersname(String usersname) {
        this.usersname = usersname;
    }

    public int getUsersage() {
        return usersage;
    }

    public void setUsersage(int usersage) {
        this.usersage = usersage;
    }

    @Override
    public String toString() {
        return "Users{" +
                "usersname='" + usersname + '\'' +
                ", usersage=" + usersage +
                '}';
    }

    @Override
    public int compareTo(Users o) {
        if (this.usersage>o.getUsersage()){
            return 1;
        }
        if (this.usersname==o.getUsersname()){
            return this.usersname.compareTo(o.usersname);
        }
        return -1;
    }
}

TreeMap 代码:

 import java.util.Map;
 import java.util.Set;
 import java.util.TreeMap;

public class TreeMapTset {
    public static void main(String[] args) {

        //实例化RreeMap
        Map<Users,String> map=new TreeMap<>();
         Users u1=new Users("杨明","24");
         Users u2=new Users("李飞","19");
         Users u3=new Users("张哥","10");
         Users u4=new Users("陈飞信","55");
         map.put(u1,"杨明");
         map.put(u2,"zangxiao");
         map.put(u3,"sixiaozi");
         map.put(u4,"lixiaozo");
         Set<Users> set=map.keySet();
         for (Users str:set){
            System.out.println(str+"====="+map.get(str));
         }

    }


}

输出:请问下是哪里错了。

image.png

JAVA 全系列/第二阶段:JAVA 基础深化和提高/容器(旧) 27097楼
人工智能/第五阶段:机器学习-线性回归/正则化 27098楼
人工智能/第六阶段:机器学习-线性分类/Softmax回归 27100楼
JAVA 全系列/(隐藏)第二十三阶段:数字货币交易所项目/服务中台_后台管理系统的开发 27102楼
JAVA 全系列/第四阶段:数据库与AI协同技术实战/Oracle 数据库的使用 27105楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637