今日bug日记

今日bug日记

—2023年6月5日
Windows使用toString()方法显示的是sign_params=alipay_sdk%3Dalipay-sdk-java-4.35.45.ALL
linux系统打印日志的时候显示成了
sign_params=+alipay_sdk%3Dalipay-sdk-java-4.35.45.ALL%

多了一个+号
盲猜可能是因为系统的问题,以下是gpt的回答:

是的,Linux和Windows操作系统上的字体确实有些区别。

首先从字体本身来说,Windows上采用的是TrueType字体和OpenType字体,而在Linux中,则主要采用TrueType、OpenType以及Type 1字体。这些字体的文件格式不完全相同,因此会在不同操作系统上显示略微不同。

其次,不同操作系统使用的字体渲染引擎也有所不同。在Windows中,采用的是DirectWrite渲染引擎,而在Linux中,主要采用FreeType渲染引擎。这两种渲染引擎在字体显示上也有微小的差异,会导致字体显示的略微改变。

此外,Linux系统下的默认字体和Windows系统下的默认字体也有所不同,从而导致了在相同字体下,Linux和Windows显示的效果也不同。

总体而言,Linux和Windows虽然使用了相近的字体文件格式,但是在具体字体显示方面,仍然存在一些细微的差异。如果需要在不同操作系统中实现相同的字体显示效果,需要进行一些特殊的处理和调整。

补充:
针对+号变空格的原因,也可能是使用了URLEncoder.encode()方法后,URLEncoder.encode()方法会把空格变成加号(+)在前台页面显示的时候会多出加号

—2023年6月6日
if (StringUtils.isNotBlank(String.valueOf(map.get(“total_amount”)))) {}
StringUtils.isNotBlank() 和 String.valueOf() 方法不能同时用,因为当字符串为空的时候String.valueOf()会返回一个字符串格式的null值和”null“值是不一样的

public static String valueOf(Object obj) {
        return (obj == null) ? "null" : obj.toString();
    }

—2023年7月3日
1、init()方法被@PostConstruct注解修饰,表示该方法应该在对象创建过程中被调用。当创建当前类对象时,依赖注入完成后,会自动触发执行init()方法,并执行其中的初始化操作
2、static修饰的静态方法,在被调用时执行
3、static修饰的静态代码块,则在类加载后执行

欢迎各位大佬在评论区沟通交流~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值