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

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    192,72 Кб
  • Опубликовано:
    2015-02-08
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

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














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

Обработка текстовой информации средством языка 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»

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

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

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


. JAVA

В Java самым важным является JVM(JavaVirtualMachine). Так как без JVM код, написанный просто, текст, который понимаем мы с вами, но не компьютер. Ему нужно объяснить прицепом бинарных кодов.

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

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

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

·              применение технологии трансляции байт-кода в машинный код непосредственно во время работы программы (JIT <#"786062.files/image002.gif">

Пример 2.

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


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

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

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

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

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

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


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

replace(char с1, char с2) - делает замену символа с1 на с2;trim() - выполняет операцию избавление пробелов в начале и конце строки.charAt(int position) - операция чтобы узнать под каким индексом находится символ( важно отметить что нумерация в Java происходить с нуля).isEmpty() - проверяет на наличие пустой строки, т.е. TRUE если пустая строка, FALSE если хоть один символ есть;

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

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

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

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

6. JAVA ОСНОВНЫЕ ЗАДАЧИ ПО ОБРАБОТКЕ ТЕКСТА

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

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

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

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

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

Массив (в некоторых языках программирования <http://ru.wikipedia.org/wiki/%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F> также таблица, ряд) - набор однотипных компонентов (элементов), расположенных в памяти непосредственно друг за другом, доступ к которым осуществляется по индексу <http://ru.wikipedia.org/wiki/%D0%98%D0%BD%D0%B4%D0%B5%D0%BA%D1%81_%28%D0%BC%D0%B0%D1%81%D1%81%D0%B8%D0%B2%29> (индексам). В отличие от списка <http://ru.wikipedia.org/wiki/%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA_%28%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B0%29>, массив является структурой с произвольным доступом.

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

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

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

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

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

JAVAclass Massiv{static void main(String args []) throws Exception{Dlina = 5;

int[] massiv = new int[Dlina];(int i = 0; i<5;i++)[i]=i+1;(int i = 0;i<5;i++).out.print(massiv[i]+” “);

}

}

2 3 4 5

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

Теперь на Паскале

PASCALi:integer;massiv:array[1..5] of integer;i:=1 to 5 do[i]:=i;i:=1 to 5 do(massiv[i]);.

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





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

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

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

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

import java.util.Scanner;java.io.File;class Zadanie1{static void main(String args[])throws Exception{in = new Scanner(new File("TEXT.txt"));str = in.nextLine();counter=0,counter2 = 0;(int i = 0;i<str.length();i++){(str.charAt(i)==' ' || str.charAt(i)=='.' || str.charAt(i)==','){(str.substring(i-counter2,i).length()>=3)++;

}else counter2++;

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

}

public class Zadanie2{

   public static void main(String args[])throws Exception{in =new Scanner(new File("TEXT.txt"));text = in.nextLine();slova[] = new String[text.length()];result=0, result2 = 0;  int counter=0,counter2 = 0;(int i = 0;i<text.length();i++){(text.charAt(i)==' ' || text.charAt(i)=='.' || text.charAt(i)==','){   [counter] = text.substring(counter2,i);=i+1;counter++;            }

}zamena = "", str1 = "", str2 = "";(int i = 0;i<counter;i++){(int j = i;j<counter-1;j++){= slova[i]; str2 = slova[j+1];= str1.compareTo(slova[j+1]);= str2.compareTo(slova[i]);(result<result2)  zamena = slova[i];{  zamena = slova[i];  slova[i]=slova[j+1];

 slova[j+1]=zamena;

}

}

}        }

import java.util.Scanner;java.io.File;class Zadanie3{static void main(String args[])throws Exception{in =new Scanner(new File("TEXT.txt"));text = in.nextLine();[] c = new int[91];check = 0;(int i = 65;i<91;i++){(int j = 0;j<text.length();j++){= (int)text.charAt(j);(check==i)c[i]=c[i]+1;

}                 }(int i = 65;i<91;i++){ch = (char)c[i];.out.print("Буква "/"+ch+"/" встречается: "+c[i]+" ");

}

}

}

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

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

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

Класс StringTokenizer имеет конструкторы:(String str);(String str, String delimiters);(String str, String delimiters,delimAsToken);

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

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

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

ЗАКЛЮЧЕНИЕ

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

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

Множество компаний вдохновило приложение JAVA, так как можно было добавить собственный язык, который мог считываться виртуальной машиной, которые в дальнейшем будут использованы для создания программ. Эти идеи нашли также выражение в спецификации общеязыковой инфраструктуры CLI <http://ru.wikipedia.org/wiki/Common_Language_Infrastructure>, заложенной в основу платформы .NET <http://ru.wikipedia.org/wiki/.NET_Framework> компанией Microsoft <http://ru.wikipedia.org/wiki/Microsoft>.

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

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

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

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

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

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

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

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

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

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

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

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

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!