Министерство образования Республики Беларусь
Учреждение образования
БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ
Факультет информационных технологий и управления
Кафедра вычислительных методов и программирования
ОТЧЕТ
по лабораторной работе
“ КРАТКИЙ ОБЗОР ЯЗЫКА JAVA. ВВЕДЕНИЕ В ООП В JAVA“
Студент гр. 024403 Казюкевич И.А.
Проверил Богданова Е.А.
Минск 2022
Цель выполнения лабораторной работы
Изучить ряд основных языковых средств языка Java.
Теория по лабораторной работе
Объектно-ориентированное программирование (ООП) составляет основу языка Java. Каждая программа нa Java является объектно-ориентированной. В каждой программе нa Java применяются принципы инкапсуляции, наследования и полиморфизма.
Формулировка индивидуального задания
12. Создать два класса LinkedListInt (связанный список целых) и LinkedListString (связанный список строк) для хранения данных типа int и строк соответственно. Методы добавляют элемент в список, удаляют элемент из списка, выводят на экран элементы списка, находят элемент в списке. В класс добавить необходимый набор полей и методов (минимум два поля и два метода) на свое усмотрение. Создать методы доступа к полям класса.
Ответы на контрольные вопросы
1. Покажите два способа объявления одномерного массива, состоящего из 12 элементов типа double.
Double a[12];
Double a[] = new double[12];
2. Покажите все варианты, которыми можно воспользоваться для инициализации элементов одномерного массива целочисленными значениями от 1 до 5.
Их несчетное множество.
3. Напишите программу, в которой массив используется для нахождения среднего арифметического десяти значений типа double. Используйте любые десять чисел.
double res = 0;
for(int i = 0; i < 10; i++){res+=mas[i];}
res/=10;
4. Напишите программу, которая сортирует массив символьных строк в лексикографическом порядке по убыванию и по возрастанию. Продемонстрируйте ее работу.
Не
5. В чем состоит разница между методами indexOf() и lastIndexOf() класса String?
Индекс элемента со значением и индекс последнего элемента со значением, которое передается.
6. Перепишите приведенную ниже последовательность операторов, воспользовавшись тернарным оператором. if(x < 0) у= 10; else у= 20;
(x<0)?(y=10;):(y=20;);
7. Является ли ошибкой превышение верхней границы массива?
Не всегда.
8. Является ли ошибкой использование отрицательных значений индекса для доступа к элементам массива?
Не всегда.
9. Можно ли управлять оператором switch с помощью объектов типа String? Если да, то напишите пример такого использования
Да, string str; Integer.parseInt(str);
Листинг
import java.util.Vector; import java.util.Scanner; public class LinkedListInt { private static String name; private static String description; public static void setName(String n){name = n;} public static void setDescription(String d){description = d;} public static String getName(){return name;} public static String getDescription(){return description;} public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.println("Введите название списка: "); String NewName = scan.next(); LinkedListInt.setName(NewName); System.out.println("Введите описание списка: "); String NewDescription = scan.next(); LinkedListInt.setDescription(NewDescription); Vector<Integer> al = new Vector<>(); while(true){ System.out.println("Меню работы с листом целых чисел" + LinkedListInt.getName() + ":"); System.out.println("1 - добавить число"); System.out.println("2 - удалить число"); System.out.println("3 - найти число по номеру"); System.out.println("4 - вывести числа"); System.out.println("5 - вывести описание"); System.out.println("0 - выйти из данного меню"); int choice; String sting = scan.next(); choice = Integer.parseInt(sting); if(choice == 1){ System.out.println("Введите значение нового элемента: "); String str = scan.next(); int add = Integer.parseInt(str); al.add(add); } if(choice == 2){ System.out.println("Введите номер для удаления: "); String del = scan.next(); int dell = Integer.parseInt(del); if(dell > 0 && dell <= al.size()) { al.remove(dell - 1); }else{ System.out.println("Вы вышли за границы."); } } if(choice == 3){ System.out.println("Введите номер для вывода: "); String show = scan.next(); int Show = Integer.parseInt(show); if(Show > 0 && Show <= al.size()) { System.out.println("Элемент " + Show + ": " + al.get(Show - 1)); }else{ System.out.println("Вы вышли за границы."); } } if(choice == 4){ for(int i = 0; i < al.size(); i++){ System.out.println("Элемент " + (i+1) + ": " + al.get(i)); } } if(choice == 5){ System.out.println("Описание списка: " + LinkedListInt.getDescription()); } if(choice == 0)break; } scan.close(); } }
import java.util.ArrayList; import java.util.Scanner; public class LinkedListString { private static String name; private static String description; public static void setName(String n){name = n;} public static void setDescription(String d){description = d;} public static String getName(){return name;} public static String getDescription(){return description;} public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.println("Введите название списка: "); LinkedListString.setName(scan.next()); System.out.println("Введите описание списка: "); LinkedListString.setDescription(scan.next()); ArrayList al = new ArrayList(); while(true){ System.out.println("Меню работы с листом строк " + LinkedListString.getName() + ":"); System.out.println("1 - добавить строку"); System.out.println("2 - удалить строку"); System.out.println("3 - найти строку по номеру"); System.out.println("4 - вывести строки"); System.out.println("5 - вывести описание"); System.out.println("0 - выйти из данного меню"); int choice; String sting = scan.next(); choice = Integer.parseInt(sting); if(choice == 1){ System.out.println("Введите новую строку: "); String str = scan.next(); al.add(str); } if(choice == 2){ System.out.println("Введите номер для удаления: "); String del = scan.next(); int dell = Integer.parseInt(del); if(dell > 0 && dell <= al.size()) { al.remove(dell - 1); }else{ System.out.println("Вы вышли за границы."); } } if(choice == 3){ System.out.println("Введите номер для вывода: "); String show = scan.next(); int Show = Integer.parseInt(show); if(Show > 0 && Show <= al.size()) { System.out.println("Строка " + Show + ": " + al.get(Show - 1)); }else{ System.out.println("Вы вышли за границы."); } } if(choice == 4){ for(int i = 0; i < al.size(); i++){ System.out.println("Строка " + (i+1) + ": " + al.get(i)); } } if(choice == 5){ System.out.println("Описание списка: " + LinkedListString.getDescription()); } if(choice == 0)break; } scan.close(); } }
public class Main{ public static void main(String[] args) { LinkedListString.main(args); LinkedListInt.main(args); } }