summaryrefslogtreecommitdiff
path: root/test-nsc/files/run/map_test.scala
blob: 53ee416367d29af71f46e7921c6891858c7bf191 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import scala.collection.immutable.Map;
import scala.collection.immutable.TreeMap;
import scala.collection.immutable.ListMap;

object Test extends Application {
    test1();
    test2();
    Console.println("OK");



    def test1() = {
        val myMap:TreeMap[int,String] = new TreeMap;
        test_map(myMap);
    }

    def test2() = {
        val myMap:ListMap[int,String] = new ListMap;
        test_map(myMap);
    }

    def test_map(myMap:Map[int,String]) = {
        val map1 = myMap.update(42,"The answer");
        val map2 = map1.update(17,"A small random number");
        val map3 = map2.update(666,"A bigger random number");
        val map4 = map3.update(4711,"A big random number");
        map1 == myMap + 42 -> "The answer";
        var i = 0;
        var map = map4;
        while(i < 43) {
            map = map.update(i,i.toString());
            i = i + 1;
        }
        i = 0;
        while(i < 4712) {
            if(map.isDefinedAt(i))
                Console.print(i + "->" + map(i) + " ");
            i = i + 1;
        }
        Console.println("");
    }
}