算法思路 - 差分数组

差分数组与前缀和数组什么是前缀和数组前缀和数组是一个辅助数组,下面给出定义:对于原数组 nums[i] , 其前缀和数组 sums[i] = (nums[0] + nums[1] + … + nums[i])前缀和数组下标为 i 的数字表示原数组从 0 到 i 的数的和。前缀和数组的性质前缀和数组主要用于频繁求区间和 :定义 nums[i, j] = (nums[i] + nums[i+1] +

- 阅读全文 -

第三章 View 的事件体系 —— Android 开发艺术探索

第三章 View 的事件体系3.1 View 基础知识3.1.1 什么是 ViewView 是 Android 中界面层的控件的一种抽象,它代表了一个控件。它派生出的各种 子类 如 TextView 等,共同组成一个界面。同时,View 有一个很特殊的抽象派生类 ViewGroup,它可以存放多个 子 View。最终 整个 View 体系会形成一棵树,这和前端的 DOM 树类似。而 ViewGro

- 阅读全文 -

第一章 Activity 的生命周期和启动模式 —— Android 开发艺术探索

第一章 Activity 的生命周期和启动模式1.1 Activity 生命周期1.1.1 正常状态下的生命周期这里正常状态下的生命周期指因用户的操作引起的生命周期改变。具体生命周期可以参考下图:有几种情况需要说明:针对一个特定的 Activity ,第一次启动,其回调如下: onCreate -> onStart -> onResume当用户打开新的 Activity 或切换到桌

- 阅读全文 -

Java 学习备份 - NIO

前面学习了 I/O 流,是 java.io 里的包,了解到 java 在 14 版本后新加入了一套 I/O 流 ,在 java.nio 包中,与传统 I/O 流相比,我认为最主要区别有两个:抽象出几个对象,分别是 Channel 、Buffer 和 Selector,他们分别的作用接下来会讲到。针对两个场景做了优化,一是读写文件的场景,在传统 I/O 流 中,对文件读和写是需要两个流,而在 NIO

- 阅读全文 -

Java 学习备份 - IO流

因为工作室给新人培训要将到网络编程,想着布置一道 Socket 实现聊天平台的作业,想自己先写写。过程中遇到了 io 流 选择的问题,觉得这个应该挺重要的,花点时间研究了一下各种 IO 流 的源码,来记录一下,以后可以用到。IO 流流是一种抽象概念,可以看成一个水流,而 Java 的 IO 流工具分为 输入流 和 输出流 ,输入流 是外界向你输入数据,而你可以不断地读,这里数据不是分包的,是水流状

- 阅读全文 -