20.1 The scala.collection Packages 20.1.1 scala.collection.immutable 20.1.2 scala.collection.mutable 20.2 Sets 20.2.1 Running Through Sets 20.2.2 Mutable vs. Immutable 20.2.3 Using a Set 20.3 Maps 20.3.1 Looping Through a Map 20.3.2 Using Maps 20.4 Buffers 20.5 Collections as Functions 20.6 Project Integration 20.6.1 Commands 20.6.2 Adding Drawables
Additional Online Exercises:O1. JSON Parsing: Many different web APIs using the JSON (JavaScript Object Notation) format instead of XML. An example of this is Twitter. Unfortunately, Twitter has changed their API to require authentication so pulling data from Twitter goes beyond the scope of an exercise. The Scala API provides a mechanism for parsing JSON data using the parser libraries. We will return to these in chapter 30. For now they provide an interesting example of other collections that you can play with in the REPL or a little program. You should import "util.parsing.json._" then you can parse JSON strings using JSON.parseFull(str:String). Try it with the following JSON strings. Note that because they include double quotes you probably want to use raw strings (with """). [1, 2, 3] { "a" : 5, "b" : "hi"} { "a" : [1, 2 , { "c" : "testing", "d" : "objects" }], "b" : 42} For this exercise you should write code that goes into the return value to get out different parts of it. Using a match expression and patterns can be very helpful here. You might try to write a function that takes an argument that is a string for a name and returns the values associated with that name that are nested in the JSON. |