HashMap Friday Four Square Today! Outside Gates at 4:15PM Not All - - PowerPoint PPT Presentation

hashmap
SMART_READER_LITE
LIVE PREVIEW

HashMap Friday Four Square Today! Outside Gates at 4:15PM Not All - - PowerPoint PPT Presentation

HashMap Friday Four Square Today! Outside Gates at 4:15PM Not All Data is Linear HashMap<String, String> myMap = new HashMap<String, String>(); CS106A CS106A Cool HashMap<String, String> myMap = new HashMap<String,


slide-1
SLIDE 1

HashMap

slide-2
SLIDE 2

Friday Four Square Today! Outside Gates at 4:15PM

slide-3
SLIDE 3

Not All Data is Linear

slide-4
SLIDE 4

HashMap<String, String> myMap = new HashMap<String, String>();

slide-5
SLIDE 5

HashMap<String, String> myMap = new HashMap<String, String>(); myMap.put("CS106A", "Cool"); CS106A CS106A Cool

To add a key/value pair to a HashMap, use the syntax

map.put(key, value)

slide-6
SLIDE 6

HashMap<String, String> myMap = new HashMap<String, String>(); myMap.put("CS106A", "Cool"); myMap.put("Ibex", "OMG SO CUTE"); CS106A CS106A Cool CS106A Ibex OMG SO CUTE

slide-7
SLIDE 7

HashMap<String, String> myMap = new HashMap<String, String>(); myMap.put("CS106A", "Cool"); myMap.put("Ibex", "OMG SO CUTE"); myMap.put("137", "Mysterious"); CS106A CS106A Cool CS106A Ibex OMG SO CUTE CS106A 137 Mysterious

slide-8
SLIDE 8

HashMap<String, String> myMap = new HashMap<String, String>(); myMap.put("CS106A", "Cool"); myMap.put("Ibex", "OMG SO CUTE"); myMap.put("137", "Mysterious"); myMap.put("CS106A", "Awesome"); CS106A CS106A Cool CS106A Ibex OMG SO CUTE CS106A 137 Mysterious Awesome

If you put a key/value pair where the key exists, the old value is replaced.

slide-9
SLIDE 9

HashMap<String, String> myMap = new HashMap<String, String>(); myMap.put("CS106A", "Cool"); myMap.put("Ibex", "OMG SO CUTE"); myMap.put("137", "Mysterious"); myMap.put("CS106A", "Awesome"); myMap.get("Ibex"); CS106A CS106A Awesome CS106A Ibex OMG SO CUTE CS106A 137 Mysterious

slide-10
SLIDE 10

HashMap<String, String> myMap = new HashMap<String, String>(); myMap.put("CS106A", "Cool"); myMap.put("Ibex", "OMG SO CUTE"); myMap.put("137", "Mysterious"); myMap.put("CS106A", "Awesome"); myMap.get("Ibex"); CS106A CS106A Awesome CS106A Ibex OMG SO CUTE CS106A 137 Mysterious

To look up the value associated with a key:

map.get(key)

slide-11
SLIDE 11

HashMap<String, String> myMap = new HashMap<String, String>(); myMap.put("CS106A", "Cool"); myMap.put("Ibex", "OMG SO CUTE"); myMap.put("137", "Mysterious"); myMap.put("CS106A", "Awesome"); myMap.get("Ibex"); myMap.get("CS106A"); CS106A CS106A Awesome CS106A Ibex OMG SO CUTE CS106A 137 Mysterious

slide-12
SLIDE 12

HashMap<String, String> myMap = new HashMap<String, String>(); myMap.put("CS106A", "Cool"); myMap.put("Ibex", "OMG SO CUTE"); myMap.put("137", "Mysterious"); myMap.put("CS106A", "Awesome"); myMap.get("Ibex"); myMap.get("CS106A"); CS106A CS106A Awesome CS106A Ibex OMG SO CUTE CS106A 137 Mysterious

slide-13
SLIDE 13

HashMap<String, String> myMap = new HashMap<String, String>(); myMap.put("CS106A", "Cool"); myMap.put("Ibex", "OMG SO CUTE"); myMap.put("137", "Mysterious"); myMap.put("CS106A", "Awesome"); myMap.get("Ibex"); myMap.get("CS106A"); myMap.get("KE$HA"); CS106A CS106A Awesome CS106A Ibex OMG SO CUTE CS106A 137 Mysterious

slide-14
SLIDE 14

HashMap<String, String> myMap = new HashMap<String, String>(); myMap.put("CS106A", "Cool"); myMap.put("Ibex", "OMG SO CUTE"); myMap.put("137", "Mysterious"); myMap.put("CS106A", "Awesome"); myMap.get("Ibex"); myMap.get("CS106A"); myMap.get("KE$HA"); CS106A CS106A Awesome CS106A Ibex OMG SO CUTE CS106A 137 Mysterious

If you get a key that isn't in a map, the method returns null.

slide-15
SLIDE 15

HashMap<String, String> myMap = new HashMap<String, String>(); myMap.put("CS106A", "Cool"); myMap.put("Ibex", "OMG SO CUTE"); myMap.put("137", "Mysterious"); myMap.put("CS106A", "Awesome"); myMap.get("Ibex"); myMap.get("CS106A"); myMap.get("KE$HA"); myMap.containsKey("137"); CS106A CS106A Awesome CS106A Ibex OMG SO CUTE CS106A 137 Mysterious

You can check whether a key exists in the map:

map.containsKey(key)

slide-16
SLIDE 16

Basic HashMap Operations

  • HashMap has two type arguments:

HashMap<KeyType, ValueType>

  • To insert a key/value pair:

map.put(key, value)

  • To look up the value associated with a key:

map.get(key)

  • To check whether a key exists:

map.containsKey(key)

slide-17
SLIDE 17

Making HashMap Shine

slide-18
SLIDE 18

Exploring the US

slide-19
SLIDE 19

Making Music

slide-20
SLIDE 20

The Keyboard File Format

note-file-name x y width height is white key?

slide-21
SLIDE 21

The xkcd Color Survey

slide-22
SLIDE 22
slide-23
SLIDE 23
slide-24
SLIDE 24
slide-25
SLIDE 25

The xkcd Color Survey

  • Volunteers (online) were shown a

randomly-chosen color and asked to name the color.

  • The result is (after filtering) about 2.8

million RGB triplets and their names.

  • What do people think the colors are?
slide-26
SLIDE 26

The Color File Format

color-name red green blue

slide-27
SLIDE 27

Displaying Colors

  • The HSB Color Format
  • Choose the hue (what

color), saturation (how intense), and brightness (absolute brightness).

  • Each choice in the

range from 0.0 to 1.0.

slide-28
SLIDE 28

How to Structure the Data?

blue

15 137 255 127 88 88 190

red

166 14 7 99 55 5 255

gray

154 156 157 243 242 254 140 143 148

associate each color name with a list of RGB triplets

slide-29
SLIDE 29

How to Structure the Data?

blue

15 137 255 127 88 88 190

red

166 14 7 99 55 5 255

gray

154 156 157 243 242 254 140 143 148

HashMap<color name, list of RGB triplets>

slide-30
SLIDE 30

How to Structure the Data?

blue

15 137 255 127 88 88 190

red

166 14 7 99 55 5 255

gray

154 156 157 243 242 254 140 143 148

HashMap<String, list of RGB triplets>

slide-31
SLIDE 31

How to Structure the Data?

blue

15 137 255 127 88 88 190

red

166 14 7 99 55 5 255

gray

154 156 157 243 242 254 140 143 148

HashMap<String, ArrayList<RGB triplet>>

slide-32
SLIDE 32

How to Structure the Data?

blue

15 137 255 127 88 88 190

red

166 14 7 99 55 5 255

gray

154 156 157 243 242 254 140 143 148

BHashMap<String, ArrayList<int[]>>B

slide-33
SLIDE 33

For More Information

http://blog.xkcd.com/2010/05/03/color-survey-results/