- 博客(18)
- 收藏
- 关注
原创 Java基础3:String类型
String(java.lang.String)不可变性public final class String{xxx…}以final修饰,表示String类不可被继承public final class String implements java.io.Serializable, Comparable<String>, CharSequence { /** ...
2018-11-01 19:58:12 269
原创 Java基础2:基本数据类型
8种基本数据类型基本数据类型的大小byte(-27 ~ 27-1) 1个字节 8位 --&gt; Byte(包装类)short(-215 ~ 215-1) 2个字节 16位 --&gt; Shortint(-231 ~ 231-1) 4个字节 32位 --&gt; Integerlong(-263 ~ 263-1) 8个字节 64位 --&gt; Longchar(-27 ~...
2018-11-01 19:14:06 152
原创 Java基础1:面向对象四大特性
面向对象四大特性抽象(有时候会省略)封装继承多态抽象将一类对象的共同特征提取出来构建的类。包括数据抽象和行为抽象。抽象只关注对象有哪些行为和属性,而不关注具体的细节。封装利用抽象数据类型将对象的属性和对属性的操作封装起来,使之成为 一个整体。数据被保护起来,对外保留必要的接口。用户无需知道具体的细节,可以通过对象对外提供的接口来访问数据。优点减少耦合:可以独立...
2018-11-01 18:10:10 824
原创 Java设计模式2之七大设计模式
一.开闭原则一个软件实体如类,模块和函数应该对拓展开放,对修改关闭。用抽象构建框架,用实现拓展细节。优点:提高软件系统的可复用性和可维护性。为了满足开闭原则,需要对系统进行抽象化设计,抽象化是开闭原则的关键。在Java、C#等编程语言中,可以为系统定义一个相对稳定的抽象层,而将不同的实现行为移至具体的实现层中完成。在很多面向对象编程语言中都提供了接口、抽象类等机制,可以通过它们定义系统的...
2018-10-16 21:17:16 109
原创 Java设计模式1之UML
UML定义统一建模语言UML展现了一系列最佳工程实践这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被证实有效。UML分类结构式图形行为式图形交互式图形结构式图形静态图(类图,对象图,包图)实现图剖面图复合结构图行为式图形活动图状态图用例图交互式图形通信图交互概述图时序图时间图UML类图用于表示类,接口,实例等之间...
2018-10-16 17:50:08 208
原创 leetcode题解之566
566.重塑矩阵在MATLAB中,有一个非常有用的函数 reshape,它可以将一个矩阵重塑为另一个大小不同的新矩阵,但保留其原始数据。给出一个由二维数组表示的矩阵,以及两个正整数r和c,分别表示想要的重构的矩阵的行数和列数。重构后的矩阵需要将原始矩阵的所有元素以相同的行遍历顺序填充。如果具有给定参数的reshape操作是可行且合理的,则输出新的重塑矩阵;否则,输出原始矩阵。思路:简单题...
2018-10-09 20:43:45 138
原创 leetcode题解之189
189.旋转数组给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。一开始思路:当k大于数组长度,对k取余。k = k % nums.length;将数组向后移动一位,将最后数字与之前每一项交换,依次循环k次时间复杂度:O(n2)进阶版:以k位置为分割点将左右两部分分别反转,再整体反转。代码:class Solution { public voi...
2018-10-09 20:23:21 174
原创 leetcode题解之172
172.阶乘后的零给定一个整数 n,返回 n! 结果尾数中零的数量。一开始思路:计算n!结果,再统计结果中零的个数。但当n很大时递归n!时间复杂度很高。优化思路:找规律1! = 1; 2! = 2; 3! = 6; 4! = 24; 5! = 120;发现,当n等于5时,由于2和5会想乘,此时会出现尾数为0的情况。由此可见,问题可以转化为n中有多少个5。代码 class ...
2018-10-09 20:10:12 149
原创 JVM学习篇一:认识运行时数据区
运行时数据区什么是虚拟机虚拟机作用JVM,JDK,JRE关系jvm结构运行时数据区(Runtime Data Areas)什么是虚拟机JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机...
2018-10-09 19:50:58 112
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人