JAVA
Frozen_Wang
种一棵树最好的时间是十年前,其次是现在
展开
-
局部变量被内部类访问时必须用final修饰的问题
今天随手写了点东西,又遇到了这个问题,就是在当内部类想要访问局部变量的时候 ,Java就要求该局部变量必须用final关键字进行修饰。之前写程序的时候经常遇到这样的问题,当时只是奔着快点结局问题的目的也没仔细的思考它本质的原因。但是我想Java如此的设计肯定有其目的,于是便静下心来想了一下。先贴一个实例。/* * final修饰局部变量的问题测试 * */public原创 2015-08-11 12:04:55 · 1569 阅读 · 0 评论 -
Java实现字符串的反转
import java.util.ArrayList;/** * 实现字符串的反转 * * @author Administrator * */public class Test04 {/*** 转换函数* Java中的String是不可变量,即当String初始化后,其内容不再发生变化,因此当其内容发生变化时,Java是通过重新创建一原创 2015-09-11 10:22:07 · 492 阅读 · 0 评论 -
Java中break跳出多层循环
众所周知,在Java语言中,break的作用是强制跳出当前的循环,不再执行剩余的代码,但是,break的作用只是跳出当前的循环,当处于嵌套的多层循环时,使用break也只能跳出最内层的循环,而当我们需要跳出整个的循环体时,我们就需要采用使用标示了。如下是示例代码:public class BreakTest{public void static main(String args原创 2015-09-04 10:06:20 · 6062 阅读 · 0 评论 -
Java利用接口和类来实现类似函数指针的功能
package com.test.interfacetest;/** * 利用接口和类实现函数指针的功能 * @author Administrator * */interface Compare{public int cmp(int a , int b );}class Compare1 implements Compare {@Override原创 2015-09-03 16:24:14 · 2929 阅读 · 0 评论 -
Java断言Assert的使用以及在Eclipse中使用assert
在JDK 1.4 之后添加了断言的功能,非常方便开发人员进行调试。Java为其提供了assert关键字来实现该功能。基本的使用语法是:我们可以用新的JAVA关键字assert来书写断定语句。一条断定语句有以下两种合法的形式: assert expression1; assert expression1 : expression2; expression1是一条被判断的布尔原创 2015-09-04 10:35:15 · 1492 阅读 · 0 评论 -
Java中static键字的思考以及使用static创建单例模式
Java中static关键字可以作用在成员变量和成员函数上可以是看作是一种所属关系的声明,即被static修饰的成员变量和成员方法是属于类的,而不属于类的实例化对象。从内存分配上来看,被static修饰的成员变量在类成功加载后就已经为其分配内存,也就可以对其进行访问,当创建类的对象时,不再为其分配格外的内存,而是各个对象实例共享一个内存。我们都知道,在我们使用static 修饰的静态方法时原创 2015-09-04 11:01:39 · 1221 阅读 · 0 评论 -
String比较中==和equal()的区别
解释一下==号,他比较的是一个对象在内存中的地址值,比如2个字符串对象String s1 = new String("str");String s2 = new String("str");如果用==号比较,会返回false,因为创建了两个对象,他们在内存中地址的位置是不一样的。equals的情况比较复杂,它是java.lang.Object类中的一个方法。因为java中所原创 2015-08-16 23:46:47 · 987 阅读 · 0 评论 -
基于数组实现顺序存储的线性表
package com.test.myarraylist;import java.util.Arrays;/** * 基于数组实现线性表 * * @author Wangjie * @version 1.0 * @param */public class MyArrayList {private int DEFAULT_SIZE = 16原创 2015-09-01 10:14:35 · 734 阅读 · 0 评论 -
HashMap和HashSet的底层实现
HashMap和HashSet是Map接口、Set接口常用的实现类,因此研究这两个实现原理有助于更好的使用它们,并理解他们的区别。下面先来分析HashMap的底层实现。Map中存储的是对,每个对都以Map.Entry的数据结构存储,然后用一个table数组来存储Entry,该table就是根据实例化的参数创建的数组。存储的位置则按照Key计算的hash返回值来计算。以下是Java源原创 2015-08-15 13:29:49 · 998 阅读 · 0 评论 -
Java整数转换成字符
Java中提供了三种整数转换成字符串的方式,大家都很熟悉:1. String s = String.valueOf(i); 2. String s = Integer.toString(i); 3. String s = "" + i; 注:Double, Float, Long 转成字串的方法大同小异。然而自己实现呢?其实也很简单,我原创 2015-09-16 10:46:19 · 8505 阅读 · 0 评论