Java之枚举用法以及http,http/2的访问返回常识,google浏览器插件

枚举还可以写成这样

新发现

public enum ErrorC {

    RED(1,"red"),GREEN,BLUE(1,"blue");

    /**
     * 构造方法
     */
    ErrorC(int num, String str) {

        this.num = num;
        this.str = str;
    }
    ErrorC() {
        num = 0;
        str = null;
    }
    public final int num;
    public final String str;

    public static ErrorC fromS(int code) {

        for (ErrorC errorCode : ErrorC.values()) {
            if (errorCode.num == code) return errorCode;
        }
        return null;
    }
}

http知识

这里写图片描述
201:请求完成,结果是创建了新资源。新创建资源的 URI 可在响应的实体中得到 处理方式:爬虫中不会遇到
202:请求被接受,但处理尚未完成 处理方式:阻塞等待
204:服务器端已经实现了请求,但是没有返回新的信 息。如果客户是用户代理,则无须为此更新自身的文档视图。 处理方式:丢弃
300:该状态码不被 HTTP/1.0 的应用程序直接使用, 只是作为 3XX 类型回应的默认解释。存在多个可用的被请求资源。 处理方式:若程序中能够处理,则进行进一步处理,如果程序中不能处理,则丢弃
301:请求到的资源都会分配一个永久的 URL,这样就可以在将来通过该 URL 来访问此资源 处理方式:重定向到分配的 URL
302:请求到的资源在一个不同的 URL 处临时保存 处理方式:重定向到临时的 URL
304 请求的资源未更新 处理方式:丢弃
这里写图片描述

为 HTTP/2 头压缩专门设计的 HPACK
HTTP/2 对消息头采用 HPACK 进行压缩传输,能够节省消息头占用的网络的流量。如何理解 HPACK 压缩呢? 如果我们约定将常用的请求头的参数用一些特殊的编号来表示,比如 GET /index.html 用一个 1 来表示,POST /index.html 用 2 来表示。那么是不是可以节省很多字节? 为 HTTP/2 的专门量身打造的 HPACK 便是类似这样的思路延伸。它使用一份索引表来定义常用的 HTTP Header。把常用的 HTTP Header 存放在表里。请求的时候便只需要发送在表里的索引位置即可。例如 :method=GET 使用索引值 2 表示,:path=/index.html 使用索引值 5 表示。 具体这里的静态映射表请看附录的Table 1: Static Table Entries。

googl插件后缀名是.crx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,针对您的问题,我提供以下代码实现: ```java public class Entity { public enum Status { UNKNOWN(-1), DISABLED(0), ENABLED(1), DELETED(3), ARCHIVED(4); private final int value; Status(int value) { this.value = value; } public int getValue() { return value; } public static Status fromValue(int value) { for (Status s : Status.values()) { if (s.getValue() == value) { return s; } } return UNKNOWN; } } private Status status; public int getStatus() { return status.getValue(); } public void setStatus(int value) { this.status = Status.fromValue(value); } } ``` 以上代码中,我们定义了一个实体类 Entity,其中包含一个枚类型 Status,它包含五个值 UNKNOWN、DISABLED、ENABLED、DELETED、ARCHIVED,分别对应 -1、0、1、3、4 这五个整数值。实体类 Entity 中包含一个名为 status 的属性,它的类型是 Status,我们使用重写的 get 和 set 方法来实现整数值与枚值之间的转换。 在 getStatus 方法中,我们使用 status.getValue() 来获取当前 status 对象的整数值,这个整数值就是我们需要的 0、1、3、4 中的一个。 在 setStatus 方法中,我们首先使用 Status.fromValue(value) 方法来将整数值 value 转换为 Status 枚类型的值,然后将这个枚类型的值赋值给 status 属性。 这样,当我们需要将整数值转换为枚值时,只需要调用 Status.fromValue(value) 方法即可,当我们需要将枚值转换为整数值时,只需要调用 status.getValue() 方法即可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值