cities.add("Хива")

advertisement
Массивы
ANDROID CLUB 2015
Сегодня

Массив + length

ArrayList + add(), get(), set,(), size(), remove()

HashMap + put(), get(), keySet(), containsKey()

Android Lab: Контакты
Массив

Массив (Array) – нумерованный набор
переменных
Массив: пример
String[] cities = new String[5];
cities[0]="Ташкент";
cities[1]="Самарканд";
cities[2]="Бухара";
cities[3]="Нукус";
cities[4]="Хива";
System.out.println(cities[3]);
Массив: практика

Определите количество студентов в комнате

Создавайте массив данных типа String c
размером – количество студентов

Теперь заполняйте их с именами студентов

Показывайте третьего студента в листе
Массив: пример
String[] cities =
{"Ташкент","Самарканд","Бухара","Нукус","Хива"};
System.out.println(cities[3]);
Массив: практика

Узнайте имена студентов в комнате

Создавайте массив данных типа String c
именами студентов

Показывайте студента второго студента в
листе
Массив: пример?
String[] cities =
{"Ташкент","Самарканд","Бухара","Нукус","Хива"};
System.out.println(cities);
// этот код показывает адрес где храниться
массив
Массив: пример!
String[] cities =
{"Ташкент","Самарканд","Бухара","Нукус","Хива"};
System.out.println(Arrays.toString(cities));
Массив: практика

Создавайте массив данных типа String c
именами студентов

Используя массив, показывайте в консоли
имена студентов
length: пример
String[] cities =
{"Ташкент","Самарканд","Бухара","Нукус","Хива"};
int count = cities.length;
System.out.println("В листе "+count+" городов");
length: практика

Создавайте массив данных типа String c
именами студентов

Используя массив, показывайте в консоли
сколько студентов: “В классе 4 студента”
ArrayList

ArrayList – автоматически расширяемый
массив
Массив vs ArrayList

ArrayList – автоматический расширяемый,
массивы нет

Массивы более быстрее и использует
меньше ОЗУ
ArrayList: пример
ArrayList cities = new ArrayList<>();
cities.add("Ташкент");
cities.add("Самарканд");
cities.add("Бухара");
cities.add("Нукус");
cities.add("Хива");
System.out.println(cities);
ArrayList: практика

Создавайте списочный лист

Добавьте имена студентов в этот списочный
лист

В консоли показывайте имена студентов
get(): пример
ArrayList cities = new ArrayList<>();
cities.add("Ташкент");
cities.add("Самарканд");
cities.add("Бухара");
cities.add("Нукус");
cities.add("Хива");
System.out.println(cities.get(3));
get(): практика

Создавайте списочный лист

Добавьте имена студентов в этот списочный
лист

В консоли показывайте свою имя
set(): пример
ArrayList cities = new ArrayList<>();
cities.add("Ташкент");
cities.add("Самарканд");
cities.add("Бухара");
cities.add("Нукус");
cities.add("Хива");
cities.set(2, "Фергана");
System.out.println(cities);
set(): практика

Создавайте списочный массив c именами
студентов

Свое имя поменяйте на “Я”

В консоли показывайте имена студентов
size(): пример
ArrayList cities = new ArrayList<>();
cities.add("Ташкент");
cities.add("Самарканд");
cities.add("Бухара");
cities.add("Нукус");
cities.add("Хива");
System.out.println("В списке "+cities.size()+"
городов");
size(): практика

Создавайте списочный массив c именами
студентов

Используя списочный массив, показывайте в
консоли сколько студентов: “В классе 4
студента”
remove(): пример
ArrayList cities = new ArrayList<>();
cities.add("Ташкент");
cities.add("Самарканд");
cities.add("Бухара");
cities.add("Нукус");
cities.add("Хива");
cities.remove(2);
System.out.println(cities);
remove(): практика

Создавайте списочный массив c именами
студентов

Удалите себя из списка

В консоли показывайте имена студентов
HashMap

HashMap – хранитель данных
в виде пар ключ/значение
Пример: Карточка в картотеке
арбитражных дел
Массив & HashMap

Массив(включая ArrayList) нумерованный
набор переменных

HashMap – определенного порядка нету
HashMap: пример

HashMap<String, String> elements = new HashMap<>();

elements.put("H", "Водород");

elements.put("O", "Кислород");

elements.put("Na", "Натрий");

elements.put("Ca", "Калций");

elements.put("Al", "Алюминый");

String element = elements.get("Na");

System.out.println(element);
HashMap: практика

Создайте Hashmap: Contacts

Тип данный ключей – String

Тип данный значений – String

В HashMap создайте лист именами
студентов(ключ), и номерами(значения)

Исползую этот HashMap, показывайте свой
номер
keySet(): пример
HashMap<String, String> elements = new
HashMap<>();
elements.put("H", "Водород");
elements.put("O", "Кислород");
elements.put("Na", "Натрий");
elements.put("Ca", "Калций");
elements.put("Al", "Алюминый");
System.out.println(elements.keySet());
keySet(): практика

Создайте Hashmap: Contacts

Тип данный ключей – String

Тип данный значений – String

В HashMap создайте лист именами
студентов(ключ), и номерами(значения)

Исползую этот HashMap, показывайте все
имена
containsKey(): пример
HashMap<String, String> elements = new
HashMap<>();
elements.put("H", "Водород");
elements.put("O", "Кислород");
elements.put("Na", "Натрий");
elements.put("Ca", "Калций");
elements.put("Al", "Алюминый");
System.out.println(elements.containsKey("Ca"));
containsKey(): практика

Создайте Hashmap: Contacts

Тип данный ключей – String

Тип данный значений – String

В HashMap создайте лист именами
студентов(ключ), и номерами(значения)

Исползую этот HashMap, показывайте есть ли
в списке имя: Азиз
Android Lab: Contacts

Поиск контакта по имени

Проверка номера на правильность

Проверка принадлежности номера к
Узбекистану

Если там, определить оператор связи
Android Lab: шаг 1

Создайте Hashmap: Contacts

Тип данный ключей – String

Тип данный значений – String

В HashMap создайте лист именами
студентов(ключ), и номерами(значения)

Исползуя этот HashMap, показывайте все
имена
Android Lab: решение 1
HashMap<String, String> contacts = new
HashMap<>();
contacts.put("Жо", "998901234567");
contacts.put("Отабек", "998931234567");
contacts.put("Азиз", "998971234567");
contacts.put("Умид", "998791234567");
System.out.println(contacts.keySet());
Android Lab: шаг 2

В консоли показывайте этот текст: "Введите
имя один из контактов”

Создавайте новый объект сканнер чтобы
получить имя от пользователя

Создавайте переменную типа String: name

Сохраните имя в этой переменной
Android Lab: решение 2
System.out.println("Введите имю один из
контактов");
Scanner scanner = new Scanner(System.in);
String name = scanner.nextLine();
Android Lab: шаг 3

Проверьте имя, есть ли она в контактах или
нет c помощью метода containsKey()

Есть ли есть – в консоли “Этот контакт имеется
в контактах”

Если нет – в консоли “В контактах такого
имени не существует”
Android Lab: решение 3
if (contacts.containsKey(name)) {
System.out.println("Этот контакт имеется
в контактах");
} else {
System.out.println("У вас в контактах
такого имени не существует");
}
Android Lab: шаг 4

Если такое имя существует в контактах,
получите номер из HashMap

В консоли: [Имя]+” : “+[Номер телефона]
Android Club: решение 4
String number = contacts.get(name);
System.out.println(name + ":" + number);
Android Club: шаг 5

Проверьте номер, состоит ли он из 12 цифр

Если да, в консоли “Номер правильный”

Если нет, в консоли “Номер не правильный”
Android Lab: шаг 6

Если номер правильный, определите номер
принадлежит Узбекистану или нет

Если номер начинается на “998” – в консоли
“Номер принадлежит Узбекистану”

Если нет – “Иностранный номер”
Android Lab: решение 6
if (number.startsWith("998")) {
System.out.println ("Номер принадлежит
Узбекистану");
} else {
System.out.println("Иностранный номер");
}
Android Lab: шаг 7

Если номер принадлежит Узбекистану,
определите оператор связи

Получите код оператора с помощью метода
substring(3,5)

В консоли: если код 90, 91-Билайн; 93,94 –
Ucell; 95, 99 – Uzmobile, 97 – UMS, 98 –
Perfectum Mobile
Android Lab: решение 7
String prefix = number.substring(3, 5);
if(prefix.equals("90")||prefix.equals("91")){
System.out.println("Билайн");}
else if(prefix.equals("93")||prefix.equals("94")){
System.out.println("Ucell");}
else if(prefix.equals("95")||prefix.equals("99")){
System.out.println("UzMobile");}
else if(prefix.equals("97")){
System.out.println("UMS");}
else if(prefix.equals("98")){
System.out.println("Perfectum Mobile");}
else{
System.out.println("Не известный");}
Вопросы?

У вас есть вопросы?
Домашнее задание
http://codingbat.com/java/Array-1
Спасибо

Спасибо за внимание
Download