Обработка текстовой информации средством языка JAVA

Создание языка программирования с помощью приложения "Java". История названия и эмблемы Java. Обзор многообразия современных текстовых редакторов. Обработка строки. Методы в классе String. Java: задачи по обработке текста. Примеры программирования.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 19.07.2014
Размер файла 276,1 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Курсовая работа

Обработка текстовой информации средством языка JAVA

ВВЕДЕНИЕ

программирование java редактор

Для начала разберемся что такое «Java», когда он был создан и кем, для чего он нужен, какие возможности имеет Java, ну и наконец, как можно обработать текст c помощью него.

Java является языком программирования, он был разработан в компаний «Sun Microsystems», затем было куплена «Java» компанией Оracle. Основная черта Java -- переносимость. Изначально Java разрабатывался согласно принципу WORA: Write Once -- Run Anywhere. Исходный код компилируется в байт-код, который исполняется виртуальной машиной. Программа, написанная на Java и откомпилированная в байт-код, может без изменений быть перенесена на любую ОС, где есть виртуальная машина Java.

Приложение «Java» была официально доступно 23 мая 1995 года. Что означала начало всех созданных приложении с помощью JAVA. И каждый мог создавать свою собственную программу, приложение, и т.д.

Тема была разделена для лучшего понимание на четыре составные:

Java

Текстовая информация

Обработка строки

Java Основные Задачи

1. ВОЗНИКНОВЕНИЕ «Java» Программирование на языках высокого уровня: учеб. пособие / О.Л. Голицына. - М. : Форум, 2013. - 495 с. - (Профессиональное образование). - Библиогр.: с. 465-467 (35 назв.).

Создателем языка программирование с помощью приложение «Java» является Джеймс Гослинг. Джеймсон Гослинг говорил что создавал продукт который поможет написать программу для бытовых электронных устройств.

Однажды Джеймс сидел все размышлял, какое же название дать своему приложение или редактору, напротив него было открыто окно, он посмотрел и увидел дуб, так появилось первое название «Оак» что в переводе с английского означает «Дуб». Затем дали название «Java» который был создан для написания любых приложение, а также серверного ПО(программное обеспечение).

Так откуда появилось название Java? Ответ на этот вопрос был очень прост, как ни странно, названо было в честь знаменитой марки кофе Java, которая, получила название одноимённого острова (Ява) где изготавливали кофе. Вот откуда появилась такая эмблема, где изображено чашка с парящим кофе.

2. JAVA

В Java самым важным является JVM(JavaVirtualMachine) Java. Объектно-ориентированное программирование для магистров и бакалавров. [Текст] : учеб. пособие / А. Н. Васильев. - СПб. : Питер, 2013. - 395 с. - (Учебное пособие) (Стандарт 3-го поколения). - Библиогр.: с. 377 (11 назв.).. Так как без JVM код, написанный просто, текст, который понимаем мы с вами, но не компьютер. Ему нужно объяснить прицепом бинарных кодов.

JVM - это программа, которая обрабатывает байтовые коды, передающие в инструкции оборудования как интерпретатор. Программы написанные с помощью Java могут быть выполняемы виртуальной машиной Java (JVM). Плюсом JVM является, полная независимость байтовых кодов от ОС и оборудования, поэтому данный продукт Java выполняется на любом устройстве, где присутствует соответствующая виртуальная машина.

Другой важной особенностью технологии Java является гибкая система безопасности благодаря тому, что исполнение программы полностью контролируется виртуальной машиной. Любые операции, которые превышают установленные полномочия программы (например, попытка несанкционированного доступа к данным или соединения с другим компьютером) вызывают немедленное прерывание.

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

· применение технологии трансляции байт-кода в машинный код непосредственно во время работы программы (JIT-технология) с возможностью сохранения версий класса в машинном коде,

· широкое использование платформенно-ориентированного кода (native-код) в стандартных библиотеках,

· аппаратные средства, обеспечивающие ускоренную обработку байт-кода (например, технология Jazelle, поддерживаемая некоторыми процессорами фирмы ARM).

Идеи, заложенные в концепцию и различные реализации среды виртуальной машины Java, вдохновили множество энтузиастов на расширение перечня языков, которые могли бы быть использованы для создания программ, исполняемых на виртуальной машине. Эти идеи нашли также выражение в спецификации общеязыковой инфраструктуры CLI, заложенной в основу платформы .NET компанией Microsoft.

Компанией Microsoft была разработана собственная реализация JVM (MSJVM), включавшаяся в состав различных операционных систем, начиная с Windows 98 (также входила в Internet Explorer от версии 3 и выше, что позволяло использовать MSJVM (Microsoft java virtual machine) в ОС Windows 95 и Windows NT 4 после установки IE3+ на данные ОС).

MSJVM имела существенные отличия от Sun Java, во многом ломающие основополагающую концепцию переносимости программ между разными платформами:

· отсутствие поддержки программного интерфейса вызова удаленных методов (RMI);

· отсутствие поддержки технологии JNI;

· наличие нестандартных расширений, таких как средства интеграции Java и DCOM, работающих только на платформе Windows.

Тесная интеграция Java с DCOM и Win32 ломала многоплатформенную суть языка. Впоследствии это явилось поводом для судебных исков со стороны Sun Microsystems к Microsoft. Суд принял сторону компании Sun Microsystems. В конечном счёте между двумя компаниями была достигнута договорённость о возможности продления срока официальной поддержки пользователей нестандартной Microsoft JVM до конца 2007 года, но не более.

3. ТЕКСТОВАЯ ИНФОРМАЦИЯ Информатика [Текст] : учебник / Ред. В.П. Поляков. - М. : Юрайт, 2013. - 524 с. - (Бакалавр. Базовый курс).

Несмотря на широкие возможности использования компьютеров для обработки самой разной информации, самыми популярными по-прежнему остаются программы, предназначенные для работы с текстом. При подготовке текстовых документов на компьютере используются три основные группы операций:

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

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

Ввод и редактирование при работе над текстом часто выполняются параллельно. При вводе и редактировании формируется содержание текстового документа.

Оформление документа задают операциями форматирования. Команды форматирования позволяют точно определить, как будет выглядеть текст на экране монитора или на бумаге после печати на принтере.

Программы, предназначенные для обработки текстовой информации, называют текстовыми редакторами.

Все многообразие современных текстовых редакторов условно можно разбить на три основные группы:

1. Изначально когда вы установили ОС(Windows) то вам дается обычный стандартный пакет, но часто бывает что и полный пакет майкрософт офис. Вот как раз именно тот самый не нужный нам для всех пользователей блокнот, WordPad, и множество похожих редакторов, такие как Atlantis, EditPad, AditorPro, Gedit и т.д. Ограниченные возможности по обработки текстов, как известно они все работаю с расширением .txt. Из-за своей простоты, ими нельзя прилично по своему вкусу форматировать объемный текст. Кстати что касается программирование многие преподаватели советуют печатать программный код именно на этих вот самых простых и менее функциональных текстовых редакторов, так в действительности лучше запоминается все методы, функции, и т.д.

2. Промежуточный класс текстовых редакторов включает в себя достаточно широкие возможности по части оформления документов. Они работают со всеми стандартными текстовыми файлами(TXT, RTF, DOC). К таким программам можно отнести Microsoft Works, Лексикон.

3. К третьей группе относятся мощные текстовые процессоры, такие, как Microsoft Word или StarOffice Writer. Они выполняют практически все операции с текстом. Большинство пользователей использует именно эти редакторы в повседневной работе.

Основными функциями текстовых редакторов и процессоров являются:

- возможность ввода и удаление или изменение символа в тексте;

- изменение размера шрифта, использования различных шрифтов символов;

- копирование и перенос части текста с одного места на другое или из одного документа в другой;

- контекстный поиск и замена частей текста;

- задание произвольных параметров абзацев и шрифтов;

- автоматический перенос слов на новую строку;

- автоматическую нумерацию, обработка и нумерация сносок;

- создание таблиц и построение диаграмм;

- проверка правописания слов и подбор синонимов;

- построение оглавлений и предметных указателей;

- распечатка подготовленного текста на принтере и т.п.

Также практически все текстовые процессоры обладают следующими функциями:

- поддержка различных форматов документов;

- многооконность, т.е. возможность работы с несколькими документами одновременно;

- вставка и редактирование формул;

- автоматическое сохранение редактируемого документа;

- работа с многоколоночным текстом;

- возможность работы с различными стилями форматирования;

- создание шаблонов документов, анализ статистической информации.

Сегодня практически все мощные текстовые редакторы входят в состав интегрированных программных пакетов, предназначенных для нужд современного офиса. Так, например, Microsoft Word входит в состав самого популярного офисного пакета Microsoft Office. Аналогичные MS Office.

4. ОБРАБОТКА СТРОКИ

Строка - это ряд слов, букв или иных знаков, написанных или напечатанных в одну линию Информатика [Текст] : учебник: В 2-х ч. Ч. 2 / Ред. С.Н. Назаров. - М. : ИНТУИТ : БИНОМ. Лаборатория знаний, 2012. - 527 с. - (Основы информационных технологий)..

На языке Java строка это String, некоторые путаются с массивов символов Char[] и думают что это строка. Char - имеет только один символ. Так как String может хранить в себе больше 1-го символа.

String - это подкласс java.lang, которая является в свою очередь библиотекой Java подключаемом автоматически. Все классы в библиотеке объявлены FINAL, что означает невозможно создать такой же тип класса.

КЛАСС «String»

Чтобы создать строку, нужно написать название класса в нашем случии это String затем имя обычно большинство присваивают str, потом приравнивайте затем пишем new он является оператором или можно создать строку с помощью двойных кавычек (двойные апострофы).

Особенностью объекта класса String является то, что его значение не может быть изменено после создания объекта при помощи какого-либо метода класса, так как любое изменение строки приводит к созданию нового объекта. При этом ссылку на объект класса String можно изменить так, чтобы она указывала на другой объект и тем самым на другое значение.

Прежде чем приступать к методам данного класса String, нужно немного научиться создавать простые классы и с каким редактором или приложением пользоваться, что бы создавать вполне компилирующий код. Не забываем, что имя класса должен совпадать с именем файла и сохраняем с расширением ,java затем создаем main этот участок рассчитан для написание главного кода, конструктор и методы пишется не в main. Я лично пользовался блокнотом, так как это лучший метод освоит все операции на языке Java, все потому что ты каждый раз набираешь код в ручную.

Пример 1.

Для начала нужно сохранять код с расширением ИмяКласса . java

Пример 2.

Используем String , где уже будет написан Привет Мир!

5. МЕТОДЫ В КЛАССЕ STRING

int length() - показывает длину строки, точнее возвращает число Int;

например, нам нужно узнать, сколько количество букв в слове, для этого мы используем данный метод:

int indexOf(char ch) - показывает под каким индексом стоит выбранный символ в строке, возвращает число Int;

Далее буду показывать только ту основную часть кода с применением данных методов.( т.е. все что записано в Main);

String toUpperCase() - данная операция делает все символы в строке прописными.

String toLowerCase() - выполняет обратное действие, т.е. все прописные в строчные.

String replace(char с1, char с2) Объектно-ориентированное программирование [Текст] : учеб. курс / Дж. Кьоу, М. Джеанини. - СПб. : Питер, 2010. - 237 с. - делает замену символа с1 на с2;

String trim() - выполняет операцию избавление пробелов в начале и конце строки.

char charAt(int position) - операция чтобы узнать под каким индексом находится символ( важно отметить что нумерация в Java происходить с нуля).

boolean isEmpty() - проверяет на наличие пустой строки, т.е. TRUE если пустая строка, FALSE если хоть один символ есть;

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

String substring(int position) - операция чтобы вырезать определенный часть текста, int position означает то что именно с этого числа берет за началу отрезка и до конца строки.

String substring(int position, int position1) - так же вырезает часть определенного текста, но уже зафиксированные координаты, точнее можно выбрать какой отрезок нужно вырезать и в дальнейшем им пользоваться.

Int compareTo(String second) - данный метод очень удобен, если нужно сравнивать две совсем разные слова, если первое слово больше то метод возвращает значение +10, если второе больше то возвращает -10, ну и когда они оба равны то возвращает значение равной нулю.

String nextLine() - это метод, который возвращает целую строчку.

6. JAVA ОСНОВНЫЕ ЗАДАЧИ ПО ОБРАБОТКЕ ТЕКСТА Программирование на Java 2 [Текст] : учеб. курс / С.В. Глушаков. - Харьков : Фолио ; М. : АСТ, 2009. - 536 с. - (Домашняя библиотека).

-найти нужный символ, нужные слова или текст;

-заменить или удалить символ, слова или текст;

-написание текста прописными или строчными;

-написание текста в лексикографическом порядке.

Для того чтоб нам было легко работать с текстом, скорее все было лучше все хранить в массиве, если текст объемный, ну и с массивами легче работать, достать или заменить под определенным индексом хранится символ или слово.

Массив (в некоторых языках программирования также таблица, ряд) -- набор однотипных компонентов (элементов), расположенных в памяти непосредственно друг за другом, доступ к которым осуществляется по индексу (индексам). В отличие от списка, массив является структурой с произвольным доступом.

Размер массива - это количество рядов, или так называемые индексы ячеек.

Массивы бывают одномерные, двухмерные и нулевым. Нулевой массив скаляр, одномерный называются вектором, двухмерный называются матрицы.

Самое важное массив хранит только одного и того же типа, он не может хранить сразу несколько типов. Если вы составили массив из String то там можно хранит только String.

Для примера я покажу одну и туже операции над массивами на двух языках это Java и Pascal

Простои массив с использованием набор целых чисел, которые хранятся в массиве

JAVA

public class Massiv{

public static void main(String args []) throws Exception{

int Dlina = 5;

int[] massiv = new int[Dlina];

for(int i = 0; i<5;i++)

massiv[i]=i+1;

for(int i = 0;i<5;i++)

System.out.print(massiv[i]+” “);

}

}

1 2 3 4 5

Результатом вывода будет следующее:

Теперь на Паскале Информатика и программирование: Компьютерный практикум [Текст] : учеб. пособие / А.Н. Гуда; Ред. В.И. Колесников. - М. : Дашков и К, 2009. - 236 с. - Библиогр.: с. 234-235 (18 назв.).

PASCAL

var i:integer;

var massiv:array[1..5] of integer;

begin

for i:=1 to 5 do

massiv[i]:=i;

for i:=1 to 5 do

writeln(massiv[i]);

end.

Результатом вывода будет следующее

1

2

3

4

5

Задан текст, состоящий из строк произвольной длины. Строки разделяются одним или несколькими символами, называются разделителями. Разделители одинаковы для всего текста. Текст заканчивается комбинацией двух специальных символов, отличительных от разделителя. Выполнить над текстом последовательные действий, указанную в задании.

1)Определить количество строк; (немного усложнил себе задание, сделал чтоб не строки считал, а сколько слов в тексте)

2)Сформировать новый текст, в котором строки упорядочены в лексикографическом порядке.

3)Определить количество вхождений для каждого символа, который встречался хотя бы один раз;

import java.util.Scanner;

import java.io.File;

public class Zadanie1{

public static void main(String args[])throws Exception{

Scanner in = new Scanner(new File("TEXT.txt"));

String str = in.nextLine();

int counter=0,counter2 = 0;

for(int i = 0;i<str.length();i++){

if(str.charAt(i)==' ' || str.charAt(i)=='.' || str.charAt(i)==','){

if(str.substring(i-counter2,i).length()>=3)

counter++;

}else counter2++;

}

System.out.println("Количество слов в тексте: "+counter);

}

}

public class Zadanie2{

public static void main(String args[])throws Exception{

Scanner in =new Scanner(new File("TEXT.txt"));

String text = in.nextLine();

String slova[] = new String[text.length()];

int result=0, result2 = 0; int counter=0,counter2 = 0;

for(int i = 0;i<text.length();i++){

if(text.charAt(i)==' ' || text.charAt(i)=='.' || text.charAt(i)==','){

slova[counter] = text.substring(counter2,i);

counter2=i+1;counter++; }

}

String zamena = "", str1 = "", str2 = "";

for(int i = 0;i<counter;i++){

for(int j = i;j<counter-1;j++){

str1 = slova[i]; str2 = slova[j+1];

result = str1.compareTo(slova[j+1]);

result2 = str2.compareTo(slova[i]);

if(result<result2) zamena = slova[i];

else{ zamena = slova[i]; slova[i]=slova[j+1];

slova[j+1]=zamena;

}

}

} }

import java.util.Scanner;

import java.io.File;

public class Zadanie3{

public static void main(String args[])throws Exception{

Scanner in =new Scanner(new File("TEXT.txt"));

String text = in.nextLine();

int[] c = new int[91];

int check = 0;

for(int i = 65;i<91;i++){

for(int j = 0;j<text.length();j++){

check = (int)text.charAt(j);

if(check==i)c[i]=c[i]+1;

} }

for(int i = 65;i<91;i++){

char ch = (char)c[i];

System.out.print("Буква "/"+ch+"/" встречается: "+c[i]+" ");

}

}

}

7. ЛЕКСИЧЕСКИЙ АНАЛИЗ ТЕКСТА

Когда мы используем методы из класса String, и меняем там содержимое, то в памяти компьютера создается новый объект этого же класса. Сохранить изменения в объекте класса String можно только с применением оператора присваивания, т.е. установкой ссылки на этот новый объект.

Класс StringTokenizer содержит методы, позволяющие разбивать текст на лексемы, отделяемые разделителями. Набор разделителей по умолчанию: пробел, символ табуляции, символ новой строки, перевод каретки. В задаваемой строке разделителей можно указывать другие разделители, например «= , ; : ».

Класс StringTokenizer имеет конструкторы:

StringTokenizer(String str);

StringTokenizer(String str, String delimiters);

StringTokenizer(String str, String delimiters,

Boolean delimAsToken);

Парочка методов:

String nextToken() - метод который возвращает объект.

boolean hasMoreTokens() - если строка имеет хоть один символ, то этот метод возвращает TRUE.

int сountToken() - что на подобие счетчика, количество символов.

Что насчет истории то это версия класса была создана когда была написана первая версия приложения JAVA для создания программ и приложения. Но не стоит забывать, что в наше время существует куда более мощные версии, где однозначно много функциональности и стабильности, более интересные возможности по обработке текстовой информации.

ЗАКЛЮЧЕНИЕ

Изучая данную тему, я вспомнил то, что проходил года 3 назад, особенно как я мучился при написании кодов на обычном блокноте, но благодаря этому хорошо запомнились все операции, методы, и написание конструкторов в Java. Данная тема хорошо иллюстрирует, то что именно большой толчок в области программирование дал приложение Java которая изначально создавался для написание программ бытовых оборудования. По моему сравнению Java является более упрошенная в пользование написание кодов чем остальные редакторы, такие как Pascal, хотя я его изучил совсем мало, но замучился уже через час.

Несмотря на всю свою сложность, приложение JAVA установлено более 3 млр. устройств, и это число растет.

Множество компаний вдохновило приложение JAVA, так как можно было добавить собственный язык, который мог считываться виртуальной машиной, которые в дальнейшем будут использованы для создания программ. Эти идеи нашли также выражение в спецификации общеязыковой инфраструктуры CLI, заложенной в основу платформы .NET компанией Microsoft.

Данная тема объемная, интересная и познавательная, я извлек много полезного.

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ

1.Васильев А.Н. C#. Объектно-ориентированное программирование - 2012г. - 315 с.

2.Веретенникова Е.Г., Патрушина С.М, Савельева Н.. Информатика 2008. - 412 с.

3.Голицына О.Л., Программирование на языках высокого уровня; учеб. пособие.2013. - 495 с.

4.Меняев М.Ф., Информатика и основы программирования, 2010г.,464с.

5.Орлов С.А., Цилькер Б.Я. Технологии разработки программного обеспечения. Современный курс по программной инженерии, 2012. - 608 с..

6.Пышкин Е.В. Основные концепции и механизмы объектно-ориентированного программирования учеб. Пособие. 2009. - 628 с.

7.Симонович С.В, Евсеев Г.А, Алексеев А.Г., Специальная информатика, 2009. - 479 с.

8. Симонович С.В., Информатика. Базовый курс 2011. - 638 с.

9.Росс Г.В, Дулькин В.Н, Сысоева Л.А.Основы информатики и программирования 2010г.- 160 с.

Размещено на Allbest.ru


Подобные документы

  • История создания языка Java. Основные принципы объектно-ориентированного программирования. Структура, особенности синтаксиса и примеры прикладных возможностей использования языка Java, его преимущества. Перспективы работы программистом на языке Java.

    курсовая работа [795,9 K], добавлен 14.12.2012

  • История развития языка программирования Java. История тетриса - культовой компьютерной игры, изобретённой в СССР. Правила проведения игры, особенности начисления очков. Создание интерфейса программы, ее реализация в среде Java, кодирование, тестирование.

    курсовая работа [168,1 K], добавлен 27.09.2013

  • Этапы развития, особенности и возможности языка программирования Java; происхождение названия. Приложения Sun Microsystems: идеи, примитивные типы. Python - высокоуровневый язык программирования общего назначения: структуры данных, синтаксис и семантика.

    реферат [79,0 K], добавлен 23.06.2012

  • Архитектура Java и Java RMI, их основные свойства, базовая система и элементы. Безопасность и виртуальная Java-машина. Интерфейс Java API. Пример использования приложения RMI. Работа с программой "Calculator". Универсальность, портативность платформ.

    курсовая работа [208,6 K], добавлен 03.12.2013

  • Разработка графического редактора для рисования двухмерной и трехмерной графики, используя язык программирования Java и интерфейсы прикладного программирования Java 2D и Java 3D. Создание графического редактора 3D Paint. Основные методы класса Graphics.

    курсовая работа [197,5 K], добавлен 19.11.2009

  • Сетевые возможности языков программирования. Преимущества использования Java-апплетов. Классы, входящие в состав библиотеки java.awt. Создание пользовательского интерфейса. Сокетное соединение с сервером. Графика в Java. Значения составляющих цвета.

    курсовая работа [508,1 K], добавлен 10.11.2014

  • Язык программирования Java, история и предпосылки его создания. Переменные, именованные константы, массивы, перечисления. Интерфейсы и обратные вызовы в Java. Удаленный вызов процедуры: общие сведения. Передача параметров при удаленном вызове процедур.

    курс лекций [526,7 K], добавлен 24.06.2009

  • Язык Java как простой, обьектно-ориентированный, многопоточный язык программирования, разработанный компанией Sun Microsystems для расширения возможностей сети Internet. Типы данных, лексика и управляющие структуры данного языка программирования.

    презентация [46,1 K], добавлен 25.04.2014

  • Понятие и общая характеристика языка программирования РНР, принципы и этапы его работы, синтаксис и ассоциируемые массивы. Обработка исключений в языке Java. Работа с базами данных с помощью JDBC. Изучение порядка разработки графического интерфейса.

    презентация [192,3 K], добавлен 13.06.2014

  • Особенности архитектуры Java. Технология Java Database Connectivity. Кроссплатформенность Java-приложений. Преимущества языка программирования. Логическая структура базы данных. Структура программного комплекса. Верификация программных средств.

    курсовая работа [962,8 K], добавлен 13.01.2016

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.