170 likes | 335 Views
Recitation 1 CS0445 Data Structures. Mehmud Abliz. Outline. Discuss the following features of JAVA Scanner (reading lines of input) String Manipulation Linked List Hash Map. Scanner class. A simple text scanner which can parse primitive types and strings.
E N D
Recitation 1 CS0445 Data Structures Mehmud Abliz
Outline • Discuss the following features of JAVA • Scanner (reading lines of input) • String Manipulation • Linked List • Hash Map
Scanner class • A simple text scanner which can parse primitive types and strings. • A Scanner breaks its input into tokens using a delimiter pattern, which by default matches whitespace. The resulting tokens may then be converted into values of different types using the various next methods.
Example(1) this code allows a user to read a number from System.in. • Scanner sc = new Scanner(System.in); • int i = sc.nextInt();
Example(2) • import java.io.File; • import java.io.FileNotFoundException; • import java.util.Scanner; • public class TextScanner { • private static void readFile(String fileName) { • try { • File file = new File(fileName); • Scanner scanner = new Scanner(file); • while (scanner.hasNext()) { • System.out.println(scanner.next()); • } • scanner.close(); • } catch (FileNotFoundException e) { • e.printStackTrace(); • } • }
Example(2) Cont. • public static void main(String[] args) { • if (args.length != 1) { • System.err.println("usage: java TextScanner1" • + "file location"); • System.exit(0); • } • readFile(args[0]); • } • }
String manipulation • Some examples of string usage: • System.out.println("abc"); • String cde = "cde"; • System.out.println("abc" + cde); • String c = "abc".substring(2,3); • String d = cde.substring(1, 2);
String manipulation functions • length(): returns the length of this string. • charAt() : returns the character at the specified index. An index ranges from 0 to length() - 1. • indexOf(): returns the index of the first occurrence of the specified character within this string. • substring(): returns a new string that is a substring of this string.
Linked List • LinkedList class: • can be used as a stack, queue, or double-ended queue.
Linked List – some methods • add(int, Object): inserts the specified element at the specified position in this list. • add(Object): appends the specified element to the end of this list. • contains(Object): returns true if this list contains the specified element. • get(int): returns the element at the specified position in this list.
Linked List – some methods • size(): returns the number of elements in this list. • isEmpty(): returns true if this list contains no elements.
Example(3) • class LinkedListExample • { • public static void main(String[] args) throws Exception • { • LinkedList list = new LinkedList(); • list.add("Hello"); • list.add("world"); • list.add(0,"there"); • list.add(0,"there1"); • list.add(1,"here"); • ListIterator itt = list.listIterator(); • while (itt.hasNext()) • { • String line = (String) itt.next(); • System.out.println(line); • } • } // end main • }
HashMap • HashMap is hash table based implementation of the Map interface. • The HashMap class is roughly equivalent to Hashtable, except that it is unsynchronized and permits nulls. • This class makes no guarantees as to the order of the map.
HashMap – Some methods • put(Object, Object): associates the specified value with the specified key in this map. • get(Object key): returns the value to which the specified key is mapped in this identity hash map, or null if the map contains no mapping for this key.
HashMap – Some methods • containsKey(Object key): returns true if this map contains a mapping for the specified key. • containsValue(Object value): returns true if this map maps one or more keys to the specified value.
HashMap – Some methods • keySet(): returns a set view of the keys contained in this map. Returned object is a Set object, and can be usedconverted to an array with toArray(). • values(): returns a collection view of the values contained in this map.
HashMap Example • // Create a new HashMap HashMap hash = new HashMap(); // Add values to the created HashMap hash.put("one", new Integer(1)); hash.put("two", new Integer(2)); hash.put("three", new Integer(3));