Mercurial > hg > Members > nobuyasu > jungle-network
view src/test/java/alice/jungle/log/example/ListTest.java @ 105:f9e29a52efd3
Move some files
author | one |
---|---|
date | Tue, 26 Nov 2013 06:43:10 +0900 |
parents | 60d28fedcbf2 |
children | 6e7724d55a72 |
line wrap: on
line source
package alice.jungle.log.example; import java.util.Iterator; import java.util.concurrent.atomic.AtomicInteger; import fj.P2; import fj.data.List; public class ListTest { public static void main(String[] args) { List<Integer> list = List.nil(); list = list.cons(2); list = list.cons(3); list = list.cons(5); list = list.snoc(1); System.out.println("list :"+list); System.out.println("list.reverse() :"+list.reverse()); System.out.println("list.index(0) :"+list.index(0)); System.out.println("list.head() :"+ list.head()); System.out.println("list.tail() :"+list.tail()); System.out.println("list.splitAt(2)"); P2<List<Integer>, List<Integer>> p2 = list.splitAt(2); List<Integer> list1 = p2._1(); List<Integer> list2 = p2._2(); System.out.println(list1); System.out.println(list2); final int INSERT_NUM = 4; list = insertInteger(list, INSERT_NUM); System.out.println("newList :"+ list); } public static List<Integer> insertInteger(List<Integer> list, final int insertNum) { int count = 0; for(Iterator<Integer> iter = list.iterator(); iter.hasNext();){ int num = iter.next(); if(insertNum > num ) { break; } count++; } P2<List<Integer>, List<Integer>> p2 = list.splitAt(count); List<Integer> newList = List.nil(); newList = p2._2().cons(insertNum); newList = p2._1().append(newList); return newList; } }