斐波那契数列-switch很有意思的一种写法

Java的内存管理. 

程序的内存分为heap和stack两个部分

.局部变量,方法调用,消耗stack内存

类的实例,数组,消耗heap的内存

stack的内存是连续分配的, 因此分配,释放速度很快,但是stack内存数量有限,windows上默认2MB, Linux 默认1MB

Heap上的内存是不连续分配的,在进行内存分配的时候首先要找到一个连续的,足够容纳所需要内存块大小的空闲内存,然后进行分配,

因此,可能会出现大量碎片,造成总空间内存足够,无法分割的情况.

详细情况:

http://blog.csdn.net/liyongming1982/article/details/6666809




hadoop@ubuntu:~/java$ cat Fibonacci.java

public class Fibonacci{
        public static int calculate(int value){
                switch(value){
                        case 0:
                                return 0;
                        case 1:
                                return 1;
                        case 2:
                                return 1;
                        default:
                                return Fibonacci.calculate(value-1)+Fibonacci.calculate(value-2);
                }
        }


        public static void main(String[] args)
        {
                int value;
                System.out.print("input:");
                value = Integer.parseInt(System.console().readLine());
                System.out.println("Result:" + new Integer(Fibonacci.calculate(value)).toString());
                for(int i=1; i<=value; i++){
                        System.out.print(new Integer(Fibonacci.calculate(i)).toString()+"");
                }
        }
}
hadoop@ubuntu:~/java$
阅读更多
个人分类: java
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭