Kamafeel

求其上,得其中;求其中,得其下,求其下,必败


  • 首页

  • 归档

double,float

发表于 2020-04-20 | 更新于 2021-08-02 | 分类于 JAVA , 开发

记住java一定要用double,亘古不变,就算数值不大也要用double,float放在内存中其实是当作double来处理的,它不会比double更节约内存资源,对应的double虚拟机会直接以double形式来进行处理,快速而且精度高,用float,不但不会节约内存资源,虚拟机为了校验float的精度,会花费更多的系统资源。同样short,char,boolean,byte在内存中都是以int形式来处理的。

在《Effective Java》这本书中也提到这个原则: float和double只能用来做科学计算或者是工程计算; 在商业计算中我们要用java.math.BigDecimal

BigDecimal 内存占用稍大

java修饰符

发表于 2020-04-20 | 更新于 2021-08-02 | 分类于 JAVA , 开发

alt

Java 函数编程

发表于 2020-04-16 | 更新于 2021-08-02 | 分类于 JAVA , 开发

alt

@FunctionalInterface

import java.text.DecimalFormat;
import java.util.Arrays;
import java.util.function.Function;

@FunctionalInterface
interface Interface1 {
    int doubleNum(int i);

    default int add(int x, int y) {
        return x + y;
    }

    static int sub(int x, int y) {
        return x - y;
    }
}

java Optional orElse

发表于 2020-04-16 | 更新于 2021-08-02 | 分类于 JAVA , 开发
String text = null;

String defaultText = Optional.ofNullable(text).orElseGet(this::getDefaultValue);

defaultText = Optional.ofNullable(text).orElse(getDefaultValue());

public String getDefaultValue() {

    System.out.println("Getting Default Value");

    return "Default Value";

}

orElse 是否存在值,都会执行默认对象方法getDefaultValue

Java 协变和逆变

发表于 2020-04-15 | 更新于 2020-10-21 | 分类于 JAVA , 开发

PECS总结:

要从泛型类取数据时,用extends;
要往泛型类写数据时,用super;
既要取又要写,就不用通配符(即extends与super都不用)。

https://www.cnblogs.com/en-heng/p/5041124.html

纠正完美主义陷阱

发表于 2020-04-14 | 更新于 2021-08-02 | 分类于 瞎扯蛋

问题不是失败,而是生活的常态,要学着带着问题生活,接受生活的不完美

OpenResty开发指南

发表于 2020-03-26 | 更新于 2022-03-01 | 分类于 中间件 , nginx

权威应用

https://moonbingbing.gitbooks.io/openresty-best-practices/content/

协程

发表于 2020-03-26 | 更新于 2020-10-21 | 分类于 kotlin

协程的特点:

  1. 线程的切换由操作系统负责调度,协程由用户自己进行调度,因此减少了上下文切换。
  2. 线程的默认Stack大小是1M,而协程更轻量,接近1K。因此可以在相同的内存中开启更多的协程。
  3. 由于在同一个线程上,因此可以避免竞争关系而使用锁。
  4. 在非 Ring 机制支持执行权限 CPU上面实现多任务(运动手环,基于硬件限制,都是采用协同调度的架构)

适应场景:

IO阻塞(数据库读写)

计算密集型不适合.

最佳实践:
nginx+lua

kotlin,go,Quasar(java)

参考:
https://blog.youxu.info/2014/12/04/coroutine/

https://www.cnblogs.com/tohxyblog/p/10712798.html

https://my.oschina.net/u/2539854/blog/845149

https://www.codedump.info/post/20190501-lua-stream/

https://kaixue.io/kotlin-coroutines-1/

Java集合对象

发表于 2020-03-25 | 更新于 2021-08-02 | 分类于 JAVA , 开发

avatar

idea和maven的哪些事情

发表于 2020-03-25 | 更新于 2020-10-21 | 分类于 JAVA , 开发

花几小时,处理maven依赖的问题,真的一点生产力都没有。

常用套路

先看下pom文件是否报错

1.右键 pom.xml -> maven -> reimport;

2.File -> Invalidate Caches / Restart

3.删除iml,然后 File > Project Structures > Modules > Add > Import Module > (select your modules base directory) > OK

如果还不行,看下是否存在Event Log是否存在错误,

Help -> Show Log in Explorer

看到相关错误,仍到https://stackoverflow.com/ 里面查询下。

最后,idea和maven的版本配置好后,别瞎升级,会浪费你几小时的生产力

http://maven.apache.org/docs/history.html
下载比你当前idea版本更早的maven版本

https://archive.apache.org/dist/maven/maven-3/3.5.2/binaries/

1…18192021

Kamafeel

204 日志
57 分类
129 标签
© 2022 Kamafeel
由 Hexo 强力驱动 v3.9.0
|
主题 – NexT.Pisces v7.1.2