会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 132428个问题
JAVA 全系列/第二阶段:JAVA 基础深化和提高/XML 技术(旧) 2987楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/IO 流技术(旧) 2988楼

import java.util.Arrays;

//自定义一个简单的包装类
public class MyInteger {
    private final int value; //MyInteger类的私有属性value
    private static MyInteger[] cache;//缓存【-128,127】之间的数值
    private static final int LOW = -128;
    private static final int HIGH = 127;

    @Override
    public String toString() {
        return  value + "";
    }

    static{
        cache = new MyInteger[HIGH-LOW+1];
        for (int i=LOW;i<=HIGH;i++){
             cache[i-LOW] = new MyInteger(i);
        }
        System.out.println(Arrays.toString(cache));
    }

    public MyInteger(int value) {  //MyInteger类的带参构造器
        this.value = value;
    }
    public static MyInteger valueOf(int value){ //MyInteger方法
        if (value>=LOW&&value<=HIGH){
            return cache[value-LOW];
        }
        return new MyInteger(value);
    }

    public int intValue(){
        return value;
    }

    public static void main(String[] args){
//        MyInteger m = new MyInteger(101);//main方法里创建MyInteger对象
//        MyInteger m1 = MyInteger.valueOf(10101);//官方推荐的创建方法
//        int m2 = m1.intValue();
        MyInteger x = MyInteger.valueOf(100);
        MyInteger x1 = MyInteger.valueOf(100);
        MyInteger x2 = MyInteger.valueOf(1000);
        MyInteger x3 = MyInteger.valueOf(1000);
        System.out.println(x==x1);
        System.out.println(x2==x3);
        System.out.println(x.equals(x1));
        System.out.println(x2.equals(x3));

    }
}

最后x2.equals(x3)结果为什么会是false

JAVA 全系列/第二阶段:JAVA 基础深化和提高/常用类 2991楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/容器(旧) 2992楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/网络编程(旧) 2995楼

老师我这里出现了不能强制类型转换

package com.hao;


import cn.hao.Server;
import com.ha.servlet.Servlet;

import java.util.List;
import java.util.Map;

/**
 * @Author:@Author
 */
public class WebApp {   //App的意思就是应用程序
    private static ServletContext contxt;
    static {
        contxt=new ServletContext();
        //分别获取对应关系的Map集合
        Map<String,String> servlet=contxt.getServlet();
        Map<String,String> mapping=contxt.getMapping();
        //创建解析XML文件的对象
        WebDom4j we=new WebDom4j();
        we.parse(we.getDocument());//解析XML文件
        //获取解析后的XML文件之后的List集合
        List<Entity> entityList=we.getEntityList();
        List<Mapping> mappingList=we.getMappingList();
        //将List集合中的数据存储到Map集合当中
        for(Entity entity:entityList){
            servlet.put(entity.getName(),entity.getClazz());
        }
        //System.out.println(servlet);
        for(Mapping map:mappingList){
            //遍历url-pattern的集合
            List<String> urlPattern=map.getUrlPattern();
            for(String s:urlPattern){
                mapping.put(s,map.getName());
            }
        }
       // System.out.println(mapping);
    }
    public static Servlet getServlet(String url)  {
        if(url==null||url.trim().equals("")){
            return null;

        }

        try {
            //如果url正确
            //根据url的key获取servlet-name的值 /log=login
            String servletName=contxt.getMapping().get(url);
            //根据servletName得到对应的servlet-class
            String servletClass=contxt.getServlet().get(servletName);
            //使用反射创建Servlet对象


            Class clazz=Class.forName(servletClass);
            //调用无参构造方法创建Servlet对象
            Servlet servlet = (Servlet) clazz.newInstance();
            return  servlet;
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (InstantiationException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        }

        return  null;
    }

    public static void main(String[] args) {
        System.out.println(getServlet("/log"));

    }
}
image.png

JAVA 全系列/第二阶段:JAVA 基础深化和提高/手写服务器项目(旧) 2996楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/智能电话本项目实战 2997楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/多线程技术(旧) 2998楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/反射技术 2999楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

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