
Study notes of Java
文章平均质量分 75
Ech0_Zzz
Zzzz
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java in Nutshell 摘要
保留字:java语言没有使用const 和 goto,但是它们也是保留字。标识符:长度不限,不能以数字开头,一般不能包含标点符号,但是可以包含ascii字符集中的下划线(_)和美元符号($),以及unicode字符集中的其他货币符号,如¥,£。其中货币符号主要用于自动生成的源码中。 其中也可以使用utf-8标识符,汉字什么的。如://Ech0public class Main {原创 2016-07-14 15:08:46 · 683 阅读 · 0 评论 -
优雅的将一个对象的集合转化成另一个对象的集合
编码如同写作,应当追求字迹工整,逻辑清晰,分段合理且言简意赅。其他的先不谈,如何做到言简意赅呢? 答案就是用尽可能短的代码去实现需求,其实也不然,简短的代码可能对于新手不太友好,但大多情况下,尽可能短的代码总是更有优势的。下面结合实际场景举个栗子简要分析一波 。 在实际的应用场景中,经常会遇到需要 将另一个对象的集合转化为另一个集合的对象 的需求,比如:现在有一个OrderDetail(订单详原创 2017-10-28 15:13:44 · 18114 阅读 · 1 评论 -
Java中的反射
什么是反射?反射,是指在运行状态下,获取类中的属性和方法,以及调用其中方法的的一种机制。这种机制的作用在于获取运行时才知道的类(Class)及其中的属性(Field)、方法(Method)以及调用其中的方法,也可以设置其中的属性值。Java反射机制提供了一下几个功能: 在运行时判断任意一个对象所属的类 在运行时构造任意一个类的对象 在运行时判断任意一个类所具有的成员变量和方法原创 2017-09-16 19:08:03 · 229 阅读 · 0 评论 -
JAVA 多线程
线程的创建:继承Thread类,并重写run()方法实现Runnable接口,实现接口中run()方法,以该接口实例作为Thread的target创建Thread对象创建callable接口的实现类,并实现call()方法,再使用FutureTask类(Future类的一个实现类)来包装该Callable对象,再以该Future对象作为Thread的target来创建Threa原创 2017-04-13 19:26:34 · 321 阅读 · 0 评论 -
遍历集合中的元素
public class CollectionEach { public static void main(String[] args) { Collection collection = new HashSet(); collection.add("hello"); collection.add(","); collect原创 2016-09-27 10:04:05 · 798 阅读 · 0 评论 -
Java 网络编程
Java 网络编程Ip地址的表示 : InetAddress 类用于表示IP地址 , 该类下还有两个子类: 1. Inet4Address 2. Inet6Address 分别用于 表示 32位的 ipv4地址 和 128 位的ipv6地址 InetAddress 没有构造器 ,而是 使用 静态方法 getByName(string host ),getByAdd原创 2016-10-12 12:14:10 · 275 阅读 · 0 评论 -
正则表达式
public class RegexTest { public static void main(String[] args) {// replaceFirst replaceAll split matches String string = "hello, ironman ~, 233"; System.out.println(stri原创 2016-09-06 13:45:57 · 228 阅读 · 0 评论 -
String与基本类型之间的转换
将字符串转换为基本类型:①通过对应包装类的parseXxx()方法②利用对应包装类的构造方法 new Xxx()③利用对应包装类的valueof()方法基本类型转换成字符串:①通过String.valueof()方法②做字符串连接 ""+ ...③利用对应包装类的toString()方法public class ConvertTest { public原创 2016-08-13 22:36:09 · 354 阅读 · 0 评论 -
Java中的日期、时间类
Java.util.DateDate() 生成一个代表当前日期时间的Date对象。Date(long date)根据指定的long整形数来生成一个Date对象,参数为时间差(相对于GMT1997 -1-1 00:00:00),单位为毫秒boolean after(Date when)测试该日原创 2016-09-02 07:06:42 · 730 阅读 · 0 评论 -
StringBuffer 、StringBuilder
StringBuffer和StringBuilder基本相似,两个类的构造器和方法基本相同。区别在于 : StringBuffer是线程安全的, 而StringBuilder则没有实现线程安全,所以性能略高。通常情况下,如果需要创建一个内容可变的字符串对象,则应当优先考虑使用StringBuffer类。public class StringBufferTest {原创 2016-08-17 10:26:44 · 214 阅读 · 0 评论 -
BigDecimal 类
float 和 double 在内存中以科学计数法的形式存储,在转换过程中容易发生精度丢失。尤其在进行算术运算时更容易发生这种情况。可以使用BIgDecimal类来实现对浮点数的精确表示和计算。需要注意的是创建BigDecimal对象时,不要直接使用double浮点数作为构造器参数来调用BigDecimal构造器,否则同样会发生精度丢失的问题:import java.math.BigD原创 2016-08-17 10:47:46 · 227 阅读 · 0 评论 -
Scanner 类
Scanner是一个基于正则表达式的文本扫描器,它可以从文件、输入流、字符串中解析出基本类型值和字符串值。Scanner 主要提供了两个方法来扫描输入。 ①hasNextXxx():是否有下一个输入项,其中Xxx可以是Int、Long等代表基本数据类型的字符,如果只是判断是否包含下一个字符串,则直接使用hasNext()。 ②nextXxx() :获取下个输入项。在默认情况下,Sc原创 2016-08-16 23:04:09 · 365 阅读 · 0 评论 -
Lambda表达式
Lambda表达式支持将代码块作为方法参数,lambda表达式允许使用更简洁的代码来创建实现了只有一个抽象方法的接口(函数式接口)的类的实例:package ech0;interface Demo{ void show();}public class LambdaDemo { public static void main(String[] args) {原创 2016-08-16 00:00:44 · 259 阅读 · 0 评论 -
深入剖析 Java 中的线程池
在中等强度的负载水平下,“每任务每线程(thread-per-task)”的方法是对顺序化执行的良好改进,在请求的到达速度尚未超出服务器的请求处理能力的情况下,这种方法可以同时带来更快的响应性和更大的吞吐量。当用于生产环境中时,该方法存在一些实际的缺陷尤其在需要创建大量的线程时尤为突出:线程生命周期的开销。线程的创建与销毁并不是“免费”的,实际的开销依据不同的平台而不同,但是创建线程的确需要时间,原创 2017-10-28 15:15:08 · 285 阅读 · 0 评论