`

基本的小程序

    博客分类:
  • Java
 
阅读更多
  1. 斐波那契数列。(Fibonacci)
    public class Fibonacci {
    	
    	public static int fib(int n) {
    		if(n < 2) return 1;
    		return fib(n-2) + fib(n-1);
    	}
    
    	public static void main(String[] args) {
    		for(int i = 0; i<18; i++) {
    			System.out.print(fib(i) + ", ");
    		}
    	}
    } /* output:
    1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 
    *///:~
     
  2. LinkedStack (参照Thinking In Java P357)
    public class LinkedStack<T> {
      private static class Node<T> {
        T item;
        Node<T> next;
        Node() { item = null; next = null; }
        Node(T item, Node<T> next) {
          this.item = item;
          this.next = next;
        }
        boolean end() { return item == null && next == null; }
      }
      private Node<T> top = new Node<T>(); // End sentinel
      public void push(T item) {
        top = new Node<T>(item, top);
      }	
      public T pop() {
        T result = top.item;
        if(!top.end())
          top = top.next;
        return result;
      }
      public static void main(String[] args) {
        LinkedStack<String> lss = new LinkedStack<String>();
        for(String s : "Phasers on stun!".split(" "))
          lss.push(s);
        String s;
        while((s = lss.pop()) != null)
          System.out.print(s + ", ");
      }
    } /* Output:
    stun!, on, Phasers, 
    *///:~
    
     
  3. public class Sets {
      public static <T> Set<T> union(Set<T> a, Set<T> b) {
        Set<T> result = new HashSet<T>(a);
        result.addAll(b);
        return result;
      }
      public static <T>
      Set<T> intersection(Set<T> a, Set<T> b) {
        Set<T> result = new HashSet<T>(a);
        result.retainAll(b);
        return result;
      }	
      // Subtract subset from superset:
      public static <T> Set<T>
      difference(Set<T> superset, Set<T> subset) {
        Set<T> result = new HashSet<T>(superset);
        result.removeAll(subset);
        return result;
      }
      // Reflexive--everything not in the intersection:
      public static <T> Set<T> complement(Set<T> a, Set<T> b) {
        return difference(union(a, b), intersection(a, b));
      }
    } ///:~
     
  4. (-128, 127) 的整数是相等的  128以上就作为不同对象处理了.
    public class Snippet {
    	public static void main(String[] args) {
    		Integer i=100;    Integer j=100;
    		System.out.println(i==j);  //打印true
    
    		i=200;    j=200;
    		System.out.println(i==j);  //打印false
    	}
    }
     
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics