annotate 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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
105
f9e29a52efd3 Move some files
one
parents: 82
diff changeset
1 package alice.jungle.log.example;
54
3d78d438f97b add ListTest
one
parents:
diff changeset
2
3d78d438f97b add ListTest
one
parents:
diff changeset
3 import java.util.Iterator;
56
ccfe9b5e8f11 bug LogUpdateCodeSegment
one
parents: 54
diff changeset
4 import java.util.concurrent.atomic.AtomicInteger;
54
3d78d438f97b add ListTest
one
parents:
diff changeset
5
3d78d438f97b add ListTest
one
parents:
diff changeset
6 import fj.P2;
3d78d438f97b add ListTest
one
parents:
diff changeset
7 import fj.data.List;
3d78d438f97b add ListTest
one
parents:
diff changeset
8
56
ccfe9b5e8f11 bug LogUpdateCodeSegment
one
parents: 54
diff changeset
9 public class ListTest {
54
3d78d438f97b add ListTest
one
parents:
diff changeset
10
3d78d438f97b add ListTest
one
parents:
diff changeset
11 public static void main(String[] args) {
3d78d438f97b add ListTest
one
parents:
diff changeset
12 List<Integer> list = List.nil();
3d78d438f97b add ListTest
one
parents:
diff changeset
13 list = list.cons(2);
56
ccfe9b5e8f11 bug LogUpdateCodeSegment
one
parents: 54
diff changeset
14 list = list.cons(3);
ccfe9b5e8f11 bug LogUpdateCodeSegment
one
parents: 54
diff changeset
15 list = list.cons(5);
ccfe9b5e8f11 bug LogUpdateCodeSegment
one
parents: 54
diff changeset
16 list = list.snoc(1);
54
3d78d438f97b add ListTest
one
parents:
diff changeset
17 System.out.println("list :"+list);
56
ccfe9b5e8f11 bug LogUpdateCodeSegment
one
parents: 54
diff changeset
18 System.out.println("list.reverse() :"+list.reverse());
54
3d78d438f97b add ListTest
one
parents:
diff changeset
19 System.out.println("list.index(0) :"+list.index(0));
3d78d438f97b add ListTest
one
parents:
diff changeset
20 System.out.println("list.head() :"+ list.head());
3d78d438f97b add ListTest
one
parents:
diff changeset
21 System.out.println("list.tail() :"+list.tail());
3d78d438f97b add ListTest
one
parents:
diff changeset
22 System.out.println("list.splitAt(2)");
3d78d438f97b add ListTest
one
parents:
diff changeset
23 P2<List<Integer>, List<Integer>> p2 = list.splitAt(2);
3d78d438f97b add ListTest
one
parents:
diff changeset
24 List<Integer> list1 = p2._1();
3d78d438f97b add ListTest
one
parents:
diff changeset
25 List<Integer> list2 = p2._2();
3d78d438f97b add ListTest
one
parents:
diff changeset
26 System.out.println(list1);
3d78d438f97b add ListTest
one
parents:
diff changeset
27 System.out.println(list2);
3d78d438f97b add ListTest
one
parents:
diff changeset
28
56
ccfe9b5e8f11 bug LogUpdateCodeSegment
one
parents: 54
diff changeset
29 final int INSERT_NUM = 4;
54
3d78d438f97b add ListTest
one
parents:
diff changeset
30 list = insertInteger(list, INSERT_NUM);
3d78d438f97b add ListTest
one
parents:
diff changeset
31 System.out.println("newList :"+ list);
56
ccfe9b5e8f11 bug LogUpdateCodeSegment
one
parents: 54
diff changeset
32
ccfe9b5e8f11 bug LogUpdateCodeSegment
one
parents: 54
diff changeset
33
ccfe9b5e8f11 bug LogUpdateCodeSegment
one
parents: 54
diff changeset
34
54
3d78d438f97b add ListTest
one
parents:
diff changeset
35 }
3d78d438f97b add ListTest
one
parents:
diff changeset
36
3d78d438f97b add ListTest
one
parents:
diff changeset
37 public static List<Integer> insertInteger(List<Integer> list, final int insertNum) {
3d78d438f97b add ListTest
one
parents:
diff changeset
38 int count = 0;
3d78d438f97b add ListTest
one
parents:
diff changeset
39 for(Iterator<Integer> iter = list.iterator(); iter.hasNext();){
3d78d438f97b add ListTest
one
parents:
diff changeset
40 int num = iter.next();
3d78d438f97b add ListTest
one
parents:
diff changeset
41 if(insertNum > num ) {
3d78d438f97b add ListTest
one
parents:
diff changeset
42 break;
3d78d438f97b add ListTest
one
parents:
diff changeset
43 }
3d78d438f97b add ListTest
one
parents:
diff changeset
44 count++;
3d78d438f97b add ListTest
one
parents:
diff changeset
45 }
3d78d438f97b add ListTest
one
parents:
diff changeset
46 P2<List<Integer>, List<Integer>> p2 = list.splitAt(count);
3d78d438f97b add ListTest
one
parents:
diff changeset
47 List<Integer> newList = List.nil();
3d78d438f97b add ListTest
one
parents:
diff changeset
48 newList = p2._2().cons(insertNum);
3d78d438f97b add ListTest
one
parents:
diff changeset
49 newList = p2._1().append(newList);
3d78d438f97b add ListTest
one
parents:
diff changeset
50 return newList;
3d78d438f97b add ListTest
one
parents:
diff changeset
51 }
3d78d438f97b add ListTest
one
parents:
diff changeset
52
3d78d438f97b add ListTest
one
parents:
diff changeset
53
3d78d438f97b add ListTest
one
parents:
diff changeset
54 }