понеділок, 25 березня 2013 р.

Java. Наслідування. Класи Date, Random.

Вивести на консоль повідомлення, що у поточний час (використати клас util.Date) у вказаній кімнаті певна температура (використати клас util.Random). Всі класи мають пакетний доступ.
Приклад виведення:
At 15.0 o'clock the temperature of Kitchen is 25 degrees, and the temperature of Bedroom is 20 degrees.

Розв'язок:



import java.util.Date;
import java.util.Random;


public class Sensor {
static int rand;
static int rand2;

public void Temper() {
Date date = new Date(); //створили об'єкт класу Date

вівторок, 19 березня 2013 р.

Java. Inner та Nested класи. Теорія.

Nested (вкладений) клас - це клас, що об"явлений всередині об"явленого іншого класу:


public class OuterClass {
...
static class StaticNestedClass{
...
}
}


Вкладені класи поділяють на

середу, 13 березня 2013 р.

Java. Прості задачі на логіку і не тільки.

1. Дано 3 int значення a b c, повернути їхню суму. Якщо якесь з значень знаходиться в межах 13...19 окрім 15 та 16 - значить його рахувати рівним нулю.
Напишіть окремий хелпер "public int fixTeen(int n) {" , що приймає int значення та повертає відповідь згідно правилу. Внаслідок цього зникає необхідність дублювати код 3 рази ("декомпозиція").

Приклад виведення:
noTeenSum(1, 2, 3) → 6
noTeenSum(2, 13, 1) → 3
noTeenSum(2, 1, 14) → 3


Розв"язок:
public int fixTeen(int n) {

вівторок, 12 березня 2013 р.

Java. Прості задачі на true/false і не тільки.

1. Дано 2 прості числа. Повернути true, якщо одне більше, в одне - менше нуля. Виняток: якщо параметр "negative" є true - повернути true, якщо обидва числа менші за нуль.

Приклад виведення:
posNeg(1, -1, false) → true
posNeg(-1, 1, false) → true
posNeg(-4, -5, true) → true


Розв"язок:

public boolean posNeg(int a, int b, boolean negative) {
if (negative) {

понеділок, 11 березня 2013 р.

Java. Прості міні-задачі на використання Array.


1. Дано числовий масив. Повернути true, якщо перший або останній елемент масиву дорівнює однаковому числу. Довжина масиву більше 1.

Приклад виведення:
firstLast6({1, 2, 6}) → true
firstLast6({6, 1, 2, 3}) → true
firstLast6({13, 6, 1, 2, 3}) → false


Розв"язок:
public boolean firstLast6(int[] nums) {
if (nums[0] == 6) {

четвер, 7 березня 2013 р.

Java. Прості міні-задачі на використання String.

1. Дано рядок, що повертає новий рядок, створений з 3х копій двох останніх символів попереднього рядку. Довжина рядку повинна бути не менше 2.
Приклад виведення:
extraEnd("Hello") → "lololo"
extraEnd("ab") → "ababab"
extraEnd("Hi") → "HiHiHi"

Розв"язок:
public String extraEnd(String str) {

середу, 6 березня 2013 р.

Java. Інтерфейси. Приклад використання.

Інтерфейс ( interface ) - це клас, в якому всі поля визначені як static та  final, а методи - abstract. Клас може реалізувати інтерфейси (переймати їх поведінку). Для цього необхідно вказати ключове слово implements. Клас може одночасно наслідувати від іншого класу та реалізовувати інтерфейси. Приклад нижче:


interface Interface1 {
int someField = 100;
String someMethod();
}

interface Interface2 {
int someField = 200;
String someMethod();
}

Java. Інтерфейс Set. Приклад використання.

Set - це інтерфейс, що визначає колекцію без дублюючих елементів. так як він є субінтерфейсом інтерфейсу Collection, він включає в себе методи, які :
- описують розмір колекції (size(); isEmpty() );
- зміст колекції (contains(); containsAll() );
- підтримують управління змістом колекції ( add(); remove(); clear() )
- дозволяють перетворити колекцію в масив ( toArray() );
- дозволяють отримати ітератор масиву ( iterator() ).
 Інтерфейс Set включає в себе 2 реалізації:
HashSet - не гарантує порядок ітерації.

import java.util.Set;
import java.util.HashSet;

public class TreeSetEx {
private static Set<String> set = new HashSet<String>();

неділю, 3 березня 2013 р.

Java. Наслідування. Абстрактні класи.

Розглянемо найпростіший приклад наслідування з використанням абстрактних класів.
Трохи теорії:
Наслідування - це відношення між класами, при якому характеристики одного класу (суперкласу) передаються (extends) іншому (підкласу) без їх повторного опису. Підклас має доступ до всіх відкритих змінних та методів суперкласу (окрім членів класу, позначених як private ).

суботу, 2 березня 2013 р.

Java. Робота з масивами.

Дано масив. Необхідно створити  новий масив, що більший від попереднього на 75%. Далі - метод, що видаляє з масиву елемент з певним індексом. Перезаписати масив. Використати виключення IllegalArgumentException та IndexOfBoundsException Зробити перевірку.

import java.util.List;
import java.util.ArrayList;

public class AL {
int size = 0;
Object[] arr;

AL(int capacity) {
if (capacity <= 0)