Java: руководство для начинающих (ЛП)

На нашем литературном портале можно бесплатно читать книгу Java: руководство для начинающих (ЛП), Шилдт Герберт-- . Жанр: Программирование. Онлайн библиотека дает возможность прочитать весь текст и даже без регистрации и СМС подтверждения на нашем литературном портале bazaknig.info.
Java: руководство для начинающих (ЛП)
Название: Java: руководство для начинающих (ЛП)
Дата добавления: 16 январь 2020
Количество просмотров: 683
Читать онлайн

Java: руководство для начинающих (ЛП) читать книгу онлайн

Java: руководство для начинающих (ЛП) - читать бесплатно онлайн , автор Шилдт Герберт

"Java: руководство для начинающих"составлено Гербертом Шилдтом, автором популярных во всем мире книг по языкам программирования, таким образом, чтобы читатель смог быстро овладеть основными навыками программирования на Java. Полностью обновленное по версии Java Platform, Standard Edition 7, пятое издание этого учебного пособия начинается с рассмотрения самых основ, включая компилирование и выполнение простых программ на Java. Затем в нем описываются ключевые слова и синтаксические конструкции, составляющие основу Java как языка программирования. Далее следует изложение самых передовых языковых средств Java, включая обобщения и многопоточное программирование. И завершается книга введением в библиотеку Swing. Представленный в книге учебный и справочный материал позволяет легко и быстро научиться программировать на Java. Для облегчения процесса изучения Java книга построена следующим образом: - Основные навыки и понятия. Каждая глава начинается с перечня основных навыков и понятий, которые предстоит усвоить читателю. - Обращение к знатоку. Во врезках под этим заголовком даются полезные рекомендации в форме вопросов и ответов. - Примеры для опробования. Это примеры небольших проектов, наглядно показывающие, как применять приобретенные знания и навыки на практике. - Упражнения для самопроверки. В конце каждой главы приводятся контрольные вопросы и задания для проверки прочности усвоенного материала. - Подробные комментарии к примерам программ. Все примеры программ в этой книге снабжены подробными комментариями, описывающими демонстрируемые языковые средства и приемы программирования на Java. В этом учебном пособии для начинающих программировать на Java подробно рассмотрены все основные средства данного языка программирования: типы данных, операторы, циклы, классы, интерфейсы, методы, исключения, обобщения, пакеты, основные библиотеки классов, средства многопоточного программирования, потоки ввода-вывода, перечисления, апплеты и документирующие комментарии. Применение всех этих языковых средств Java на практике наглядно демонстрируется в небольших проектах для самостоятельного опробования. Книга снабжена массой полезных советов авторитетного автора и множеством примеров программ с подробными комментариями, благодаря которым они становятся понятными любому читателю независимо от уровня его подготовки. А для проверки прочности приобретенных знаний и навыков в конце каждой главы приводятся контрольные вопросы и задания.

Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала

1 ... 76 77 78 79 80 81 82 83 84 ... 133 ВПЕРЕД
Перейти на страницу:

Класс FileWriter представляет поток, через который можно осуществлять запись данных в файл. Ниже приведены общие формы объявления двух наиболее часто употребляемых конструкторов данного класса.FileWriter(String имя_файла) throws IOExceptionFileWriter(String имя_файла, boolean append) throws IOException

Здесь имя файла обозначает полный путь к файлу. Если параметр append принимает логическое значение true, данные записываются в конец файла, а иначе они перезаписывают прежние данные на том же месте в файле. При возникновении ошибки в каждом из указанных выше конструкторов генерируется исключение IOException. Класс FileWriter является производным от классов OutputStreamWriter и Writer. Следовательно, в нем доступны методы, объявленные в его суперклассах.

Ниже приведен краткий пример программы, демонстрирующий ввод текстовых строк с клавиатуры и последующий их вывод в файл test. txt. Набираемый текст читается до тех пор, пока пользователь не введет слово "stop". Для вывода текстовых строк в файл используется класс FileWriter.// Простой пример утилиты ввода с клавиатуры и вывода данных// на диск, демонстрирующий применение класса FileWriter.// Для компиляции этого кода требуется JDK 7// или более поздняя версия данного комплекта.import java.io.*;class KtoD { public static void main(String args[]) { String str; BufferedReader br = new BufferedReader( new InputStreamReader(System.in)); System.out.println("Enter text ('stop' to quit)."); // Создание потока вывода типа FileWriter. try (FileWriter fw = new FileWriter("test.txt")) { do { System.out.print(": "); str = br.readLine(); if(str.compareTo("stop") == 0) break; str = str + "rn"; // add newline // Запись текстовых строк в файл, fw.write(str); } while(str.compareTo("stop") != 0) ; } catch(IOException exc) { System.out.println("I/O Error: " + exc); } }}Применение класса FileReader

В классе FileReader создается объект типа Reader, который можно использовать для чтения содержимого файла. Чаще всего употребляется такой конструктор этого класса:FileReader(String имя_файла) throws FileNotFoundException

где имя файла обозначает полный путь к файлу. Если указанный файл не существует, генерируется исключение FileNotFoundException. Класс FileReader является производным от классов InputStreamReader и Reader. Следовательно, в нем доступны методы, объявленные в его суперклассах.

Приведенный ниже пример демонстрирует простую утилиту для отображения на экране содержимого текстового файла test. txt. Она является своего рода дополнением к утилите, рассмотренной в предыдущем разделе.// Простая утилита ввода с дйска и вывода на экран,// демонстрирующая применение класса FileReader.// Для компиляции этого кода требуется JDK 7// или более поздняя версия данного комплекта.import java.io.*;class DtoS { public static void main(String args[]) { String s; // Создание в классе BufferedReader оболочки с целью заключить // в нее класс FileReader и организовать чтение данных из файла. try (BufferedReader br = new BufferedReader(new FileReader("test.txt"))) { while((s = br.readLine()) != null) { System.out.println(s) ; } } catch(IOException exc) { System.out.println("I/O Error: " + exc) ; } }}

Обратите внимание на то, что для потока типа FileReader создана оболочка в классе BufferedReader. Благодаря этому появляется возможность обращаться к методу readLine (). Кроме того, закрытие потока типа Buf feredReader, на который в данном примере ссылается переменная br, автоматически приводит к закрытию файла.Применение оболочек типов для преобразования символьных строк в числа

Прежде чем завершить обсуждение средств ввода-вывода, необходимо рассмотреть еще один способ, помогающий читать числовые строки. Как известно, метод println () предоставляет удобные средства для вывода на консоль различных типов данных, в том числе целых чисел и чисел с плавающей точкой. Он автоматически преобразует числовые значения в удобную для чтения форму. Но в Java отсутствует метод, который читал бы числовые строки и преобразовывал бы их во внутреннюю двоичную форму. Например, не существует варианта метода read (), который читал бы числовую строку "100" и автоматически преобразовывал ее в целое число, пригодное для хранения в переменной типа int. Но для этой цели в Java имеются другие средства. И проще всего подобное преобразование осуществляется с помощью так называемых оболочек типов.

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

Оболочками типов являются классы Double, Float, Long, Integer, Short, Byte, Character и Boolean. Эти классы предоставляют обширный ряд методов, позволяющих полностью интегрировать простые типы в иерархию объектов Java. Кроме того, в классах-оболочках числовых типов содержатся методы, предназначенные для преобразования числовых строк в соответствующие двоичные эквиваленты. Эти методы приведены ниже. Каждый из них возвращает двоичное значение, соответствующее числовой строке.Оболочка типаМетод преобразованияDoublestatic double parseDouble(String str) throws NumberFormatExceptionFloatstatic float parseFloat(String str) throws NumberFormatExceptionLongstatic long parseLong(String str) throws NumberFormatExceptionIntegerstatic int parselnt(String str) throws NumberFormatExceptionShortstatic short parseShort(String str) throws NumberFormatExceptionBytestatic byte parseByte(String str) throws NumberFormatException

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

Методы синтаксического анализа позволяют без труда преобразовать во внутренний формат числовые значения, введенные в виде символьных строк с клавиатуры или из текстового файла. Ниже приведен пример программы, демонстрирующий применение для этих целей методов parselnt () и parseDouble (). В этой программе находится среднее арифметическое ряда чисел, введенных пользователем с клавиатуры. Сначала пользователю прелагается указать количество числовых значений для обработки, а затем программа вводит числа с клавиатуры, используя метод readLine (), а с помощью метода parselnt () преобразует символьную строку в целочисленное значение. Далее осуществляется ввод числовых значений и последующее их преобразование в тип double с помощью метода parseDouble ()./* Эта программа находит среднее арифметическое для ряда чисел, введенных пользователем с клавиатуры. */import java.io.*;class AvgNums { public static void main(String args[]) throws IOException { // создать объект типа BufferedReader, // использующий поток ввода System.in BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str; int n; double sum = 0.0; double avg, t; System.out.print("How many numbers will you enter: "); str = br.readLine(); try { // Преобразование символьной строки // в числовое значение типа int. n = Integer.parselnt(str); } catch(NumberFormatException exc) { System.out.println("Invalid format"); n = 0; } System.out.println("Enter " + n + " values."); for(int i=0; i < n ; i++) { System.out.print(" : "); str = br.readLine(); try { // Преобразование символьной строки // в числовое значение типа double, t = Double.parseDouble(str) ; } catch(NumberFormatException exc) { System.out.println("Invalid format"); t = 0.0; } sum += t; } avg = sum / n; System.out.println("Average is " + avg); }}

Выполнение этой программы может дать, например, следующий результат:How many numbers will you enter: 5Enter 5 values.: 1.1: 2.2: 3.3: 4.4: 5.5Average is 3.3

1 ... 76 77 78 79 80 81 82 83 84 ... 133 ВПЕРЕД
Перейти на страницу:
Комментариев (0)
название