随笔分类 -  JAVA

摘要:本文整理自漫画: "什么是HashMap? 小灰的文章" 。已获得作者授权。 HashMap 是一个用于存储Key Value 键值对的集合,每一个键值对也叫做 Entry 。这些个Entry 分散存储在一个数组当中,这个数组就是HashMap 的主干。 HashMap 数组每一个元素的初始值都是N 阅读全文
posted @ 2017-12-25 09:49 六层楼 阅读(3641) 评论(0) 推荐(0) 编辑
摘要:这篇是大二自学Java的时候记下的笔记,中午回顾印象笔记的时候意外看到了这篇。看到多年前写下的文字,我想起那时候我对Java的懵懵懂懂,每天晚上在图书馆照着书写书上的示例代码,为一个中文分号绞尽脑汁,为命令提示符上打印出的图案而兴奋。到现在我依然觉得,一个从没有过编程经验的人在屏幕上打印出 的时候, 阅读全文
posted @ 2017-12-13 17:11 六层楼 阅读(6233) 评论(0) 推荐(1) 编辑
摘要:HashMap 是Java开发中经常使用的数据结构。相信HashMap 的基本用法你已经很熟悉了。那么我们该如何遍历HashMap 呢?哪种遍历方式的性能更好呢?本篇文章来为你解决这个疑惑。 一、HashMap 遍历 如果你了解一些HashMap 底层原理,那么你肯定知道HashMap 是一个存储键 阅读全文
posted @ 2017-12-13 12:48 六层楼 阅读(638) 评论(0) 推荐(0) 编辑
摘要:Given an integer array with no duplicates. A maximum tree building on this array is defined as follow: The root is the maximum number in the array. Th 阅读全文
posted @ 2017-12-08 10:05 六层楼 阅读(323) 评论(0) 推荐(0) 编辑
摘要:Given a string, find the length of the longest substring without repeating characters. Examples: Given , the answer is , which the length is 3. Given 阅读全文
posted @ 2017-11-28 11:16 六层楼 阅读(146) 评论(0) 推荐(0) 编辑
摘要:《设计模式之禅》读书笔记(四)之抽象工厂模式 一、抽象工厂模式的定义 Provide an Interface for creating families of related or dependent objects without specifying their concrete classe 阅读全文
posted @ 2017-11-22 16:25 六层楼 阅读(266) 评论(0) 推荐(0) 编辑
摘要:一、缩小为简单工厂模式 考虑这样一个问题:一个模块仅需要一个工厂类,没有必要把它产生出来,使用静态的方法就可以了。类图如下 可以看出简单工厂模式,是把抽象的工厂类变为静态的工厂类,简化了类的创建过程。需要变更的源码仅仅是HumanFactory和NvWa类。之前的笔记中没给出书上的例子,考虑到只写出 阅读全文
posted @ 2017-11-21 16:30 六层楼 阅读(245) 评论(0) 推荐(0) 编辑
摘要:工厂方法模式的定义为: Define an interface for creating an object , but let subclass decide which class to instantiate. Factory Method lets a class defer instant 阅读全文
posted @ 2017-11-21 16:29 六层楼 阅读(251) 评论(0) 推荐(0) 编辑
摘要:单例模式是一个比较简单的模式,定义如下: Ensure a class has only one instance, and provide a global point of access to it.(确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例) 1.饿汉式 2.懒汉式 线 阅读全文
posted @ 2017-11-09 10:06 六层楼 阅读(517) 评论(0) 推荐(0) 编辑
摘要:闲着无聊学习下Python 的语法。由于我目前主要编程语言还是Java ,所以针对Python 的学习我主要是通过与Java 进行对比。我使用的是Python3,因此语法上也会遵循Python3 的规则。 简介 Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。 Python由Gu 阅读全文
posted @ 2017-11-06 14:28 六层楼 阅读(2539) 评论(0) 推荐(0) 编辑
摘要:上一篇文章我们用写了一个Java Mail 的 "Demo" ,相信你已经可以用那个例子来发送邮件了。但是Demo 有很多的问题。 首先每次发送需要配置的东西很多,包括发件人的邮箱和密码、smtp服务器和SMTP端口号等信息。其次,没有将发送和邮件内容相分离。按照单一职责原则,应该有且仅有一个原因引 阅读全文
posted @ 2017-11-06 14:22 六层楼 阅读(462) 评论(0) 推荐(0) 编辑
摘要:上周公司的项目要求开发邮件发送功能。自己在网上跟着教程边学边做了一下午,现在基本开发完成了。由于一个同事也想看下该怎么写,顺便学习下。所以我就写成了一遍教程,顺便巩固下邮件发送里面的内容。 Demo 第一步,我们先写个Demo,用最快的方式最少的代码向你展示Java Mail 是如何工作的。 我的开 阅读全文
posted @ 2017-11-06 13:58 六层楼 阅读(347) 评论(0) 推荐(0) 编辑
摘要:在Win10中配置环境变量的方法跟在Win8和Win7中有些不同,看了看网上好多还是Win7/8里面的配置方法。虽然从原理上基本上没什么问题,但有些细节却会让人很苦恼。特意整理下新的配置方法。我假定你已经正确安装了JDK和JRE。 1. 配置JAVA_HOME 首先打开环境变量的配置界面,新建一个系 阅读全文
posted @ 2017-11-06 13:57 六层楼 阅读(73408) 评论(4) 推荐(3) 编辑
摘要:最近做的项目有这样一个需求:要求对map中的值进行排序并生成序号。如果值相等则序号不变;如果不相等序号为该数数值在所有元素中的索引。如下表所示: |Key(String)|Value(Float)|Idx| | | | | |23|12.4 | 1| |10|3.2 | 2| |11|2.2| 3| 阅读全文
posted @ 2017-11-06 13:56 六层楼 阅读(3128) 评论(0) 推荐(0) 编辑
摘要:Given a positive integer, output its complement number. The complement strategy is to flip the bits of its binary representation. Note: Example 1: Exa 阅读全文
posted @ 2017-07-04 17:02 六层楼 阅读(461) 评论(0) 推荐(0) 编辑
摘要:与树的前中后序遍历的DFS思想不同,层次遍历用到的是BFS思想。一般DFS用递归去实现(也可以用栈实现),BFS需要用队列去实现。 层次遍历的步骤是: 1.对于不为空的结点,先把该结点加入到队列中 2.从队中拿出结点,如果该结点的左右结点不为空,就分别把左右结点加入到队列中 3.重复以上操作直到队列 阅读全文
posted @ 2017-07-03 09:22 六层楼 阅读(15127) 评论(2) 推荐(0) 编辑
摘要:前两天重装了系统,今天想写一个项目的时候出现了点问题。 在使用eclipse创建maven web项目时,点Finish后报了Could not resolve archetype的问题。 Could not resolve archetype org.apache.maven.archetypes 阅读全文
posted @ 2017-06-25 13:21 六层楼 阅读(47488) 评论(6) 推荐(10) 编辑
摘要:最近有人在微信上给我发了一个数学题目,如下图: 我看了之后感觉很是简单,但是却想了半天才解出来。解出来后我想到了用程序再解一遍,然而精确计算的问题却让人头疼不已。 解题思路: 思路其实很简单,暴力求解就可以,但是当你写了一个四重for循环后你会发现解不出来。由此考虑到结果可能是小数,便把增量改成了f 阅读全文
posted @ 2017-05-01 19:37 六层楼 阅读(1968) 评论(0) 推荐(0) 编辑
摘要:Given a string containing only digits, restore it by returning all possible valid IP address combinations. For example:Given "25525511135", return ["2 阅读全文
posted @ 2017-03-23 16:10 六层楼 阅读(223) 评论(0) 推荐(0) 编辑
摘要:Given a binary tree, return thepreordertraversal of its nodes' values.For example:Given binary tree{1,#,2,3}, 1 \ 2 / 3return[1,2,3].Not... 阅读全文
posted @ 2015-11-26 21:44 六层楼 阅读(167) 评论(0) 推荐(0) 编辑