Общий алгоритм работы программы — КиберПедия 

Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Общий алгоритм работы программы

2020-02-15 95
Общий алгоритм работы программы 0.00 из 5.00 0 оценок
Заказать работу

 

Для решения задачи написания этой программы, прежде всего импортированием всех классов пакета java.util для удобства доступа к классам этого пакета (не нужно указывать полный путь класса в дереве пакетов):java.util.*;

Главный класс программы class sort

Метод, с которого начинается выполнение программы:

public static void main(String[] args)

Установка номер слова в строке для сортировки (если не указан, то -1) sortIndex = -1;

Создание объекта класса Scanner из пакета java.util:

Scanner in = new Scanner(System.in);

Начало разбора по строчкам, и заполнение объекта контейнера и последующие за ним действия

while(in.hasNext()){.add(new MyString(in.nextLine(), sortIndex));

}.sort(sortList);.out.print("\n\n");(int i=0; i<sortList.size(); i++)

{str = (MyString)sortList.get(i);

System.out.println(str.getStr());

}.close();

}

Вспомогательный класс, реализующий удобный нам формат строк

class MyString implements Comparable{String interString;int sortIndex = -1;MyString(String str, int wordNum)

{.interString = str;.sortIndex = wordNum;

}String getStr()

{interString;

}

public int compareTo(Object arg0)

{

Сортировка без учёта регистраstr.toLowerCase().compareTo(arg0.getStr().toLowerCase());

Сортировка по длине (будет выполняться, если параметр не задан)

if (sortIndex == -1){interString.length() - ((MyString)arg0).getStr().length();

}

Сортировка по sortIndex`овому слову в строке

String str1 = null, str2 = null;

{= interString.split(" ")[sortIndex];

}(Exception e)


Если нет нужного слова в 1ой строке, то считается что первое слово меньше 2ого.-1;

Здесь сравнивается корректноstr1.compareTo(str2);

В языке Java используются массивы. Массив является объектом и обладает всеми его свойствами и методами. Создание массива производится с помощью оператора new. размер массива может быть запрошен явно, через свойство.length.В Java можно контролировать выхода за границы массива. Это делает интерпретатор, в случае выхода индекса за пределы массива будет инициировано исключение java.lang.ArrayIndexOutOfBoundsException. Перехватывать его не обязательно, и нежелательно, т.к. это RuntimeException и сигнализирует оно о том, что программа работает неправильно. И уж совсем не стоит проектировать приложение в расчете на то, что после прохождения всего массива будет брошено это исключение, и это будет сигналом к завершению цикла обработки. После создания массив инициализируется значением по умолчанию для типа его элементов. Это гарантируется спецификацией языка. В массиве хранятся ссылки на объекты. Как любая переменная объектного типа является ссылкой на объект, так и любой элемент массива тоже является ссылкой. А для ссылки значение по умолчанию - null!.

Коллекции. Любое действие над группой каких-либо данных потребует какое-то хранилище - коллекцию. Существует много типов коллекции. Это связано с тем, что пока никто не смог создать коллекцию, которая прекрасно подходила бы для всех видов работы с ней. Одни коллекции позволяют иметь одинаковые элементы, другие - нет. С одними коллекциями можно работать из нескольких потоков, с другими надежная работа не гарантируется. Одни коллекции сразу сортируют все данные, другие хранят данные в том порядке, в котором их добавляли. Коллекции все-таки имеют много общего, на что указывает реализация этими коллекциями определенных интерфейсов. Вы можете использовать одинаковые механизмы для работы с разными типами коллекций. Отличие будет заключаться в скорости работы. Коллекции имеют очень широкий спектр всевозможных функций - их можно сливать в одну, узнавать какие элементы есть в обеих коллекциях, какие наоборот отсутствуют в первой, но есть во второй. Коллекции можно сортировать по определенному алгоритму - вы можете использовать стандартные варианты, можете написать свои правила сортировки.

Должен использоваться класс Iterator. Это специальный класс, который позволяет работать с коллекций. При создании итератор указывает на начало коллекции и перемещается к следующему элементу вызовом метода next. Этот метод также возвращает тот объект из коллекции, на который в данный момент указывает итератор. Метод hasNext проверяет - есть ли еще элементы в коллекции. Таким образом, можно просмотреть любую коллекцию.

java программирование язык алгоритм

Код программы

java.util.*;class Sort

{

// точка входа в программу

public static void main(String[] args)

{

//устанавливаем номер слова в строке для сортировки (если не указал, то -1) sortIndex = -1;

//проверяем количество аргументов(args.length!= 0){= Integer.valueOf(args[0]);

}in = new Scanner(System.in);

ArrayList sortList = new ArrayList();

//начинаем разбор по строчкам, и заполнение объекта контейнера

while(in.hasNext()){.add(new MyString(in.nextLine(), sortIndex));

}.sort(sortList);.out.print("\n\n");(int i=0; i<sortList.size(); i++)

{str = (MyString)sortList.get(i);

System.out.println(str.getStr());

}.close();

}

}

//вспомогательный класс, реализующий удобный нам формат строк

class MyString implements Comparable{String interString;int sortIndex = -1;MyString(String str, int wordNum)

{.interString = str;.sortIndex = wordNum;

}String getStr()

{interString;

}int compareTo(Object arg0)

{

//сортировка без учёта регистра

//return str.toLowerCase().compareTo(arg0.getStr().toLowerCase());

//сортировка по длине (будет выполняться, если параметр не задан)

if (sortIndex == -1){interString.length() - ((MyString)arg0).getStr().length();

}

//сортировка по sortIndex`овому слову в строке

String str1 = null, str2 = null;

{= interString.split(" ")[sortIndex];

}(Exception e)

{

//если нет нужного слова в 1ой строке, то считаем что первое слово меньше 2ого.

return -1;

}

{= ((MyString)arg0).getStr().split(" ")[sortIndex];

}(Exception e)

{

//если нет нужного слова во 2ой строке, то считаем что 2ое слово меньше 1ого

return 1;

}

//здесь сравниваем корректноstr1.compareTo(str2);

}

}


Заключение

 

В рамках курсовой работы была разработана программа, реализующая сортировки слов по разным параметрам. Условие устанавливается пользователем. Программа составлена так, что если вы заранее не устанавливаете параметры сортировки, он будет сортировать, но только по другому параметру (по длине).

Разработка программы продемонстрировала некоторые особенности объектно-ориентированного языка Java и его стандартного комплекта разработки программного обеспечения Java Standard Edition 6.0 Software Development Kit, а также показала, что язык Java может быть успешно использован для написания кроссплатформенных консольных приложений. Среда программирования JDK + NetBeans оказалась лёгкой в изучении и проста в использовании.

При помощи данной программы пользователь, сможет моментально сортировать группу слов вводимых с клавиатуры



Поделиться с друзьями:

Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.012 с.