Comparable泛型踩坑
发表于|更新于
|浏览量:
善疑人者,人亦疑之;善防人者,人亦防之。——刘基
之前写的Comparable解决泛型限定问题
遇到了这种情况:

这是因为LocalDate没有实现Comparable<LocalDate>
而是由其实现的接口ChronoLocalDate去继承的Comparable<ChronoLocalDate>
并且LocalDate去实现的Serializable,而不是ChronoLocalDate

我们这里直接用的T extends Comparable<T>,此处传了LocalDate就是extends Comparable<LocalDate>
和实现Serializable的不是同一层级,所以我们需要指定为Comparable<? super T>,这个意思就是说允许Comparable里的类型是它的父类或者接口,具体super和extends区别可以看泛型的super和extends

改成Comparable<? super T>后,编译通过
相关推荐
2022-01-05
java生成带logo二维码
人生如路。须在荒凉中走出繁华的风景来。——七堇年 代码很简单,需要用到hutool 我这边logo是网络地址,实际开发中可以使用本地地址 1QrCodeUtil.generatePng("二维码实际的值", QrConfig.create().setImg(ImgUtil.getImage(URLUtil.url(/img/oss/2020-06-01/head.jpg)))) 然后这里的返回值就是byte[]我们可以返回给前端 当然,也推荐使用客户端生成二维码,这样避免了网络传输带来的损耗 简单场景和安卓等java客户端应用可以用这个方法
2022-12-12
开源ocr库tesseract
强者容易坚强,正如弱者容易软弱。——爱默生 分享一个开源的OCR库 文档链接:https://tesseract-ocr.github.io/ 源码地址:https://github.com/tesseract-ocr/tesseract 其包含了多种编程语言
2024-05-15
jackson范型注意
放弃不难,但坚持一定很酷。——《解忧杂货店》 今天使用 Jackson 有个疑问,就是带范型的对象,Jackson 序列化后,范型会怎样处理: 就比如说{"data":{"data":1}},以及下面这个类: 1234@Datapublic static class Foo<T> { private T data;} 这个外层的 data 会反序列化出来什么类型呢? 实际上反序列化出来 LinkedHashMap 1234var obj = mapper.readValue(""" {"data":{"data":1}} """, Foo.class);Assertions.assertEquals(LinkedHashMap.class, obj.getData().getClass()); 如果我们需要继续解析成具体的类型,则...
2020-08-12
url怎么传数组
前两天遇到一个奇葩问题,url怎么传数组参数到后端,后端怎么接收 先申明,一般项目中绝不会这么传。。。 其实很简单,前端转换成JSON进行一次Base64加密,后端进行一次Base64解密再从json转换成对象就可以 前端base64加密解密方法: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114//1.加密 var str = '内容'; var base = new Base64(); var result = base.encode(str); document.write(resu...
2022-09-07
对接雅虎日语文本校对
青年时种下什么,老年时就收获什么——易卜生 API地址:https://developer.yahoo.co.jp/webapi/jlp/kousei/v2/kousei.html 代码: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758package com.ruben;import cn.hutool.core.map.MapUtil;import cn.hutool.core.text.CharPool;import cn.hutool.core.text.StrPool;import cn.hutool.http.HttpRequest;import cn.hutool.http.HttpUtil;import cn.hutool.json.JSONObject;import cn.hutool.json.JSONUtil;import cn.hutool.log.StaticLog;import cn....
2022-05-14
mybatis流式查询
所谓浮躁,也就是时时刻刻,希望以最短的时间,博取最多的存在感、优越感和自我认同。——张佳玮 分享一个mybatis流式查询 用法很简单: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364package com.ruben;import com.ruben.mapper.UserMapper;import com.ruben.pojo.po.UserPO;import lombok.SneakyThrows;import org.apache.ibatis.cursor.Cursor;import org.apache.ibatis.session.RowBounds;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.junit.j...

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog