随笔分类 - Java
摘要:我们都知道 JDK 8 以后开始使用了新的 joda 日期处理 API。 在这个 API 中,新增了 Period 和 Duration 这 2 个类,用于计算 2 个日期之间的间隔。 下面对这 2 个类进行一些比较和说明,从使用上来说,如果你不需要秒或者纳秒一级的比较的话,就用 Period ,P
阅读全文
摘要:有时候,我们在提交代码的时候希望知道我们对文件进行了什么修改。 那么在 Commit 对话框中,选择需要提交的文件,双击鼠标左键盘就可以了。 这个时候你的 IntelliJ IDEA 将会为你打开一个对比的对话框。 在这个对比的对话框中将会把你的本地文件版本和 Git 的版本进行对比。 在这个对比中
阅读全文
摘要:针对不同的项目,我们可能需要在 POM 文件中定义我们使用的许可证。 Apache Apache 许可证的配置信息如下: <licenses> <license> <name>Apache 2.0</name> <url>https://www.apache.org/licenses/LICENSE
阅读全文
摘要:在使用 IntelliJ IDEA 完成代码修改准备进行提交的时候,我们可能想知道曾经自己提交的内容是什么。 比如说想知道上次提交的代码关联的 TASK ID 是多少等。 这个时候,你可以先对 Commit 对话框进行选择,然后使用快捷键 Ctrl + M 来显示提交 Message 的历史。 当然
阅读全文
摘要:slice() 方法返回一个新的数组对象,这一对象是一个由 begin 和 end 决定的原数组的浅拷贝 (包括 begin ,不包括end )。 原始数组不会被改变。 重点关注 针对这个函数需要重点关注的是 end 这个元素不在拷贝出来的数组中。 数组的下标从 0 开始。 请考察下面的代码: co
阅读全文
摘要:如果你是前端工程师的话,你应该对 caniuse 这个网站会比较熟悉。 这个网站的作用就是 对 CSS,JS 的一些兼容性问题,并且都从它反馈的兼容性数据中获益,让我们的线上项目更加稳定、和谐的跑在用户电脑里。 简单来说就是因为用户使用的浏览器版本很多,不是所有的 JS 语法都能够在所有浏览器里面运
阅读全文
摘要:有时候,我们希望在 JavaScript 中将 2 个已经存在的数组串拼接成 1 个数组。 简单来说就是将数组进行合并。 这个时候,我们可以使用 JavaScript 的 concat 函数。 考察下面的代码: const array1 = ['a', 'b', 'c']; const array2
阅读全文
摘要:JavaScript 针对数组中的元素通常有下面 4 个操作的方法 push() pop() unshift() shift() 下面的这张图应该能够帮你比较好的理解这 4 个方法是如何对数组中的元素进行操作的。 总结 对数组头部的元素进行操作使用的是 shift。 shift 是移除,那么对应的添
阅读全文
摘要:进程和线程的概念是操作系统的概念,因此你可能需要看看大学有关《操作系统原理》这本书中的内容才能理解什么是进程和线程。 简单来说进程和线程涉及到 CPU 的使用和内存的分配。 可以想象下你的浏览器,如果你打开了一个浏览器,表示你启动了一个进程,如果你再打开多个标签页,表示你启动了不同的线程(敲黑板:浏
阅读全文
摘要:这个问题如果展开了说就复杂去了,包括内存怎么存的呀,如何指向的的呀。 给一个小技巧,Java 的基本数据类型就是下面这些,这些数据类型是可以直接用 CPU 进行计算的。 整数类型:byte,short,int,long 浮点数类型:float,double 字符类型:char 布尔类型:boolea
阅读全文
摘要:null 和 undefined 在 JavaScript 是最常见的空问题。 null 和 undefined 的定义 JavaScript 的最初版本是这样区分的: null是一个表示"无"的对象,转为数值时为 0; undefined是一个表示"无"的原始值,转为数值时为NaN。 下图对上面的
阅读全文
摘要:考察下面的一个实例: const array1 = [1, 4, 9, 16]; // pass a function to map const map1 = array1.map(x => x * 2); console.log(map1); // expected output: Array [
阅读全文
摘要:在很多项目中,你可能会看到下面的一个函数。 _.each([1, 2], function(value) { console.log(value); }); 然后是不是非常困惑这是干什么的对吗? 然后从再到页面最上面看看,你可能会看到下面的这句话: import * as _ from 'lodas
阅读全文
摘要:如果你希望在 Discourse 中设置 Google 的广告服务的话,Google 通常会要求你设置一个 ads.txt 文件。 这个文件的内容大致为下图的这种格式: 如何在 Discourse 中进行设置呢? 问题解决 其实 Discourse 已经帮你设置好了这个功能。 你只需要拷贝上面文本中
阅读全文
摘要:如果使用 Git 的话,这 2 个命令可能每天都要用几百遍。 相信绝大部分的人都会直接 pull,偶尔 fetch。但是这 2 个到底有什么不同呢? 不打算讨论过多的理论,因为非常枯燥,并且知道了可能也是看得迷迷糊糊。下面就使用场景来说。 应该用 Fetch 还是 Pull 应该 Pull 是绝大部
阅读全文
摘要:ISO-8601 是国际标准化组织提供的一个有关时间表示的规范。 如下:1970-01-01T00:00:00Z 可能是我们最常看到的格式了,这个表示的是一个 Epoch 时间,其实也不完全一定是,因为在上面没有表示出毫秒。 关于上面的时间格式解读如下: T 为日期和时间的分隔符,无特殊意义,猜测可
阅读全文
摘要:因为众所周知的原因,老的 Java 中的日期处理是非常不好用但是又不得不用的 API。 而且经常混乱还容易出错,相信大家应该都用过救民于水火的 joda Datetime 对象吧,简直是活菩萨。 时间来到 JDK 8 以后的版本了,我们还需要使用 joda 吗? 结论 根据官方的说法,joda 项目
阅读全文
摘要:英文标题【Array to String Conversions】 概述 本页面中的内容对 Array 和 String 之间互相进行转换的方法进行一些说明。 我们可以使用 原生 Java(vanilla Java) 或者一些第三方的 Java 工具类来实现这个转换。ies. 将 Array 转换为
阅读全文
摘要:有朋友问,如何在 Discourse 中查看自己的主题,以便于对自己发布的主题进行修改。 这个主要是在我们其中一个供客户发布租房信息的网站上面。 进入路径 其实是可以从你的用户的头像中进入的。 在页面的左上角选择你的用户头像,然后进行单击。然后选择最右侧的图标下面的活动。 如下图: 然后可以从左侧导
阅读全文
摘要:Discourse 对邮件的依赖程度是非常高的。 通常来说用户可能会因为你的网站发送邮件过多而拒收,这个时候如果你使用的是第三方的邮件服务器的话,通常在日志上会显示拒绝。 对拒绝的邮件我们通常还是希望留住这个用户不要删除。 根据 Discourse 的后台,我们考古后发现有一个 Deactivate
阅读全文

浙公网安备 33010602011771号