Добавил:
ПОИТ 2016-2020 Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Пацей 4 сем / Лекции / СТПI_1_введение

.pdf
Скачиваний:
75
Добавлен:
29.04.2018
Размер:
5.71 Mб
Скачать

специальные нечисловые значения (для плав. точки)

Inf (Infinity — бесконечность) + -

POSITIVE_INFINITY NEGATIVE_INFINITY

if (Double.isNaN(z)) ;

NaN (Not a Number — не число);

Ind (Indeterminate — неопределенность).

double qqq= 1.0/0.0; //Infinity double aaa= 0.0/0.0; //NaN double somen = log(-345); //NaN

floatas=Float.intBitsToFloat(0x7F800000); //Infinity as = Float.intBitsToFloat(0xFF800000);//-Infinity

Название значения

s (знак)

p (порядок)

m (мантисса)

–NaN (отрицательное не число)

1

11..11

11..11

 

 

 

10..01

Indeterminate (неопределенность) 1

11..11

10..00

Signaling –NaN

1

11..11

01..11

–Infinity

1

11..11

00..00

Приоритет

Операции одного приоритета вычисляются слева направо. Исключение: операции присваивания вычисляются справа налево: x = y = z вычисляется как x = (y = z).

Левый операнд вычисляется раньше правого.

Операнды полностью вычисляются перед выполнением операции.

Перед выполнением составной операции присваивания значение левой части

сохраняется для использования в правой части.

int z = 3, xb = 5;

int rez= xb + (xb = 3); // 8; int rez2= (xb = 3) + xb; //6. int rez3= xb += (xb = 3);//6

z += z += xb += 7; //19

Строки

значение не может быть изменено после создания

 

Конкатенация строки с объектом

объекта при помощи какого-либо метода класса, так как

 

любое изменение строки приводит к созданию нового

объекта

String name = "Это строка\nс переносом"; String soname = name+"2016";

System.out.println("\u0439\u04ae\u0541\u0441\u04328\u0438"); //йҮ св8и

1)Строки – неизменяемы – для совместного доступа

2)Изменять содержимое строковой переменной – можно ( ссылка)

3)Неэффективно - редактирование

StringBuffer betterStraing = new StringBuffer("dqwdnkad"); StringBuilder

Проверка строк на равенство

String forEqual ="Hello"; String forA ="Hello";

System.out.println("Hello".equals("Ytllo")); //false System.out.println( "Hello".equals(forEqual));//true System.out.println(forEqual.compareTo("Hello")); //0 - st if( forEqual==forA);

Пустыеи нулевые строки

String nullStr = null; String nullenStr = "";

if (nullenStr.length() == 0); if(nullStr == null);

быстрее

Сравнение строк

 

Оператор == сравнивает ссылки.

 

 

Метод equals сравнивает значени

String twoStr = null;

if (twoStr.equals("Java")); //java.lang.NullPointerExce

if ("".equals("Java")); //false

if ("Java"=="Java"); //true

if (twoStr=="Java"); //false

if (new String("Java")==new String("Java"));//false

Массивы

Массивы в языке Java являются

динамическими

Объявление

double[] arra, массив; //ссылка на массив int i = 0, ar[], k = -1;

Определение

arra = new double[5]; //0 – иниц.

массив= new double[100];//индекс с 0 ar = new int[50];

Инициализация

arra[0] = 0.01; arra[1] = -3.4; arra[2] = 2.89; arra[3] = 4.5; arra[4] = -6.7;

for (int ii = 0; ii < 100; ii++) массив[ii] = 1.0 / i; for (int ii = 0; ii < 50; ii++) ar[ii] = 2 * i + 1;

double[] aq = {0.01, -3.4, 2.89, 4.5, -6.7}; double []aw;

aw=new double[] {0.1, 0.2, -0.3, 0.45, -0.02};

Безымянный массив

System.out.println(new char[] {'P', 'O', 'I', 'T', '2'});

Ссылки можно присваивать

aw = aq; aw=null;

Сравнения (по ссылкам)

double[] aq = {0.01, 0.2, -0.3, 4.5, -6.7}; double []aw;

aw =new double[] {0.1, 0.2, -0.3, 4.5, -6.7};

boolean comRez = aq==aw; //false

aw = aq;

comRez = aw==aw; //true

Размер int arrSize =aw.length;

Соседние файлы в папке Лекции