→ Определение и особенности

→ Базовый синтаксис

→ Объект Java и классы

→ Типы данных Java

→ Базовые операторы Java

→ Операторы цикла

→ Заявления о принятии решения

→ Массивы

Питон

→ Определение и особенности

→ Базовый синтаксис

→ Типы данных Python

→ Основные операторы Python

→ Операторы цикла

→ Заявления о принятии решения

JavaScript

→ Определение и особенности

→ Базовый синтаксис

→ Типы данных JavaScript

→ Основные операторы JavaScript

→ Заявления о принятии решения

→ Операторы цикла

→ Функции

→ События

Ява

Определение и функции

Java — это высокоуровневый, объектно-ориентированный, независимый от платформы, динамический, многопоточный, интерпретируемый, высокопроизводительный язык программирования.

  • Высокоуровневыйвысокоуровневый, так как его легко написать для конечных пользователей и не требуется много инструкций машинного уровня.
  • объектно-ориентированный язык программирования. В Java все является объектом. Java можно легко расширять, поскольку она основана на объектной модели.
  • независимый от платформы — в отличие от многих других языков программирования, включая C и C++, когда Java компилируется, он не компилируется в машину для конкретной платформы, а в независимый от платформы байт-код. Этот байт-код распространяется через Интернет и интерпретируется виртуальной машиной (JVM) на любой платформе, на которой он выполняется.
  • Динамический. Java считается более динамичным, чем C или C++, поскольку он предназначен для адаптации к меняющейся среде. Java-программы могут содержать обширный объем информации во время выполнения, которую можно использовать для проверки и разрешения доступа к объектам во время выполнения.
  • Многопоточность. Многопоточность Java позволяет писать программы, которые могут выполнять множество задач одновременно. Эта конструктивная особенность позволяет разработчикам создавать интерактивные приложения, которые могут работать бесперебойно.
  • Интерпретируется — байт-код Java на лету транслируется в собственные машинные инструкции и нигде не сохраняется. Процесс разработки более быстрый и аналитический, поскольку связывание является поэтапным и легким процессом.
  • Высокая производительность. Благодаря использованию компиляторов Just-In-Time Java обеспечивает высокую производительность.
  • Java гарантированно является языком программирования для однократной записи и запуска в любом месте.

Написание кода «Hello World» с использованием Java

Public class MyFirstJavaProgram{
  
  public static void main(Strings []args){
    
    System.out.println("Hello World");
}
}
  • Откройте блокнот и добавьте код, как указано выше.
  • Сохраните файл как: MyFirstJavaProgram.java.
  • Откройте окно командной строки и перейдите в каталог, в котором вы сохранили класс. Предположим, что это C:\.
  • Введите «javac MyFirstJavaProgram.java» и нажмите Enter, чтобы скомпилировать код. Если в вашем коде нет ошибок, командная строка перенесет вас на следующую строку (предположение: установлена ​​переменная пути).
  • Теперь введите « java MyFirstJavaProgram », чтобы запустить вашу программу.
  • Вы сможете увидеть «Hello World», напечатанную на окне.
C:\> javac MyFirstJavaProgram.java
C:\> java MyFirstJavaProgram
Hello World

Основной синтаксис

Чувствительность к регистру — Java чувствительна к регистру, что означает, что идентификаторы Hello и hello будут иметь разное значение в Java.

Имена классов — для всех имен классов первая буква должна быть в верхнем регистре. Если для формирования имени класса используются несколько слов, первая буква каждого внутреннего слова должна быть в верхнем регистре. Пример: класс MyFirstJavaClass

Имена методов. Все имена методов должны начинаться со строчной буквы. Если для формирования имени метода используется несколько слов, то первая буква каждого внутреннего слова должна быть в верхнем регистре.Пример: public void myMethodName()

Имя файла программы — имя файла программы должно точно совпадать с именем класса. Пример: Предположим, что «MyFirstJavaProgram» — это имя класса. Затем файл следует сохранить как MyFirstJavaProgram.java.

public static void main(String args[]) — обработка программы Java начинается с метода main (), который является обязательной частью каждой программы Java.

Идентификаторы Java

Все компоненты Java требуют имен. Имена, используемые для классов, переменных и методов, называются идентификаторами.

В Java есть несколько моментов, которые следует помнить об идентификаторах. Они следующие:

  • Все идентификаторы должны начинаться с буквы (от A до Z или от a до z), символа валюты ($) или символа подчеркивания (_).
  • После первого символа идентификаторы могут иметь любую комбинацию символов.
  • Ключевое слово не может использоваться в качестве идентификатора.
  • Самое главное, идентификаторы чувствительны к регистру.
  • Примеры допустимых идентификаторов: age, $salary, _value, __1_value.
  • Примеры недопустимых идентификаторов: 123abc, -salary.

Комментарии в Java

Java поддерживает однострочные и многострочные комментарии, очень похожие на C и C++. Все символы, доступные внутри любого комментария, игнорируются компилятором Java.

public class MyFirstJavaProgram {

   /* This is my first java program.
    * This will print 'Hello World' as the output
    * This is an example of multi-line comments.
    */

   public static void main(String []args) {
      // This is an example of single line comment
      /* This is also an example of single line comment. */
      System.out.println("Hello World");
   }
}

Ключевые слова Java

В следующем списке показаны зарезервированные слова в Java. Эти зарезервированные слова нельзя использовать в качестве постоянных или переменных или любых других имен идентификаторов.

abstract, assert, boolean, break, byte, case, catch, char, class, const, continue, default, do, double, else, enum, extends, final, finally, float, for, goto, if, implements, import, instanceof, int, interface, long, native, new, package, private, protected, public, return, short, static, strictfp, super, switch, synchronized, this, throw, throws, transient, try, void, volatile, while

Объекты и классы в Java

Объект — объекты имеют состояния и поведение. Пример: у собаки есть состояния — цвет, имя, порода, а также поведение — виляние хвостом, лай, еда. Объект является экземпляром класса.

Класс. Класс может быть определен как шаблон/схема, описывающая поведение/состояние, которое поддерживает объект его типа. Ниже приведен образец класса.

Пример

public class Dog {
   String breed;
   int age;
   String color;
   void barking() {
   }
   void hungry() {
   }
   void sleeping() {
   }
}

Класс может иметь любое количество методов для доступа к значениям различных видов методов. В приведенном выше примере barking(), голодный() и sleep() являются методами.

Создание объекта

Как упоминалось ранее, класс предоставляет чертежи для объектов. Таким образом, объект создается из класса. В Java ключевое слово new используется для создания новых объектов.

При создании объекта из класса есть три шага:

  • Объявление — объявление переменной с именем переменной с типом объекта.
  • Создание экземпляра — ключевое слово «новое» используется для создания объекта.
  • Инициализация — за ключевым словом «новое» следует вызов конструктора. Этот вызов инициализирует новый объект.

Ниже приведен пример создания объекта:

Пример

public class Puppy {
   public Puppy(String name) {
      // This constructor has one parameter, name.
      System.out.println("Passed Name is :" + name );
   }
   public static void main(String []args) {
      // Following statement would create an object myPuppy
      Puppy myPuppy = new Puppy( "tommy" );
   }
}

Типы переменных Java

Ниже приведены типы переменных в Java.

  • Локальные переменные
  • Переменные класса (статические переменные)
  • Переменные экземпляра (нестатические переменные)
  • Локальные переменные. Переменные, определенные внутри методов, конструкторов или блоков, называются локальными переменными. Переменная будет объявлена ​​и инициализирована внутри метода, и переменная будет уничтожена, когда метод завершится.

Пример

Здесь age — локальная переменная. Это определено внутри метода pupAge(), и его область действия ограничена только этим методом.

public class Test {
   public void pupAge() {
      int age = 0;
      age = age + 7;
      System.out.println("Puppy age is : " + age);
   }
   public static void main(String args[]) {
      Test test = new Test();
      test.pupAge();
   }
}
  • Переменные экземпляра. Переменные экземпляра — это переменные внутри класса, но вне любого метода. Эти переменные инициализируются при создании экземпляра класса. Доступ к переменным экземпляра можно получить из любого метода, конструктора или блоков этого конкретного класса.

Пример

import java.io.*;
public class Employee {
   // this instance variable is visible for any child class.
   public String name;
   // salary  variable is visible in Employee class only.
   private double salary;
   // The name variable is assigned in the constructor.
   public Employee (String empName) {
      name = empName;
   }
   // The salary variable is assigned a value.
   public void setSalary(double empSal) {
      salary = empSal;
   }
   // This method prints the employee details.
   public void printEmp() {
      System.out.println("name  : " + name );
      System.out.println("salary :" + salary);
   }
   public static void main(String args[]) {
      Employee empOne = new Employee("Ransika");
      empOne.setSalary(1000);
      empOne.printEmp();
   }
}
  • Переменные класса/статические. Переменные класса — это переменные, объявленные внутри класса, вне любого метода, с ключевым словом static.

Пример

import java.io.*;
public class Employee {
   // salary  variable is a private static variable
   private static double salary;
   // DEPARTMENT is a constant
   public static final String DEPARTMENT = "Development ";
   public static void main(String args[]) {
      salary = 1000;
      System.out.println(DEPARTMENT + "average salary:" + salary);
   }
}

Конструкторы

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

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

Ниже приведен пример конструктора —

Пример

public class Puppy {
   public Puppy() {
   }
   public Puppy(String name) {
      // This constructor has one parameter, name.
   }
}

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

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

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

Синтаксис

Ниже приведен синтаксис конструктора:

class ClassName {
   ClassName() {
   }
}

Java допускает два типа конструкторов, а именно —

  • Конструкторы без аргументов
  • Параметризованные конструкторы

Конструкторы без аргументов

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

Пример

Public class MyClass {
   Int num;
   MyClass() {
      num = 100;
   }
}

Параметризованные конструкторы

Чаще всего вам понадобится конструктор, который принимает один или несколько параметров. Параметры добавляются в конструктор так же, как они добавляются в метод, просто объявляйте их в круглых скобках после имени конструктора.

Пример

Вот простой пример, в котором используется конструктор —

// A simple constructor.
class MyClass {
   int x;
   
   // Following is the constructor
   MyClass(int i ) {
      x = i;
   }
}

Операторы импорта

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

Например, следующая строка попросит компилятор загрузить все классы, доступные в каталоге java_installation/java/io —

import java.io.*;

Типы данных

Переменные — это не что иное, как зарезервированные области памяти для хранения значений. Это означает, что когда вы создаете переменную, вы резервируете место в памяти.

Основываясь на типе данных переменной, операционная система выделяет память и решает, что можно хранить в зарезервированной памяти. Следовательно, назначая переменным разные типы данных, вы можете хранить в этих переменных целые числа, десятичные дроби или символы.

В Java доступны два типа данных:

  • Примитивные типы данных
  • Справочные/объектные типы данных

Примитивные типы данных

Java поддерживает восемь примитивных типов данных. Примитивные типы данных предопределены языком и названы по ключевому слову.

байт

  • Тип данных Byte представляет собой 8-битное целое число в дополнении до двух со знаком.
  • Минимальное значение -128 (-2⁷)
  • Максимальное значение 127 (включительно)(2⁷ -1)
  • Значение по умолчанию – 0.
  • Тип данных Byte используется для экономии места в больших массивах, в основном вместо целых чисел, поскольку байт в четыре раза меньше целого числа.
  • Пример: байт a = 100, байт b = -50

короткая

  • Короткий тип данных представляет собой 16-разрядное целое число в дополнении до двух со знаком.
  • Минимальное значение -32 768 (-2¹⁵)
  • Максимальное значение 32 767 (включительно) (2¹⁵ -1)
  • Короткий тип данных также может использоваться для экономии памяти в виде байтового типа данных. Шорт в 2 раза меньше целого
  • Значение по умолчанию — 0.
  • Пример: короткий s = 10000, короткий r = -20000

инт

  • Тип данных Int представляет собой 32-разрядное целое число в дополнении до двух со знаком.
  • Минимальное значение — 2 147 483 648 (-2³¹)
  • Максимальное значение 2 147 483 647 (включительно) (2³¹ -1)
  • Integer обычно используется в качестве типа данных по умолчанию для целочисленных значений, если нет проблем с памятью.
  • Значение по умолчанию – 0.
  • Пример: int a = 100000, int b = -200000

длинная

  • Длинный тип данных представляет собой 64-битное целое число в дополнении до двух со знаком.
  • Минимальное значение: -9 223 372 036 854 775 808 (-2⁶³)
  • Максимальное значение 9 223 372 036 854 775 807 (включительно) (2⁶³ -1)
  • Этот тип используется, когда требуется более широкий диапазон, чем int.
  • Значение по умолчанию: 0 л.
  • Пример: long a = 100000 л, long b = -200000 л

плавать

  • Тип данных с плавающей точкой представляет собой 32-разрядное число с плавающей запятой одинарной точности IEEE 754.
  • Плавающая в основном используется для экономии памяти в больших массивах чисел с плавающей запятой.
  • Значение по умолчанию: 0,0f.
  • Тип данных с плавающей запятой никогда не используется для точных значений, таких как валюта.
  • Пример: число с плавающей запятой f1 = 234,5f

двойной

  • тип данных double — это 64-битная IEEE 754 двойная точность с плавающей запятой.
  • Этот тип данных обычно используется как тип данных по умолчанию для десятичных значений, как правило, выбор по умолчанию.
  • Двойной тип данных никогда не следует использовать для точных значений, таких как валюта.
  • Значение по умолчанию — 0,0d.
  • Пример: двойной d1 = 123,4

логический

  • логический тип данных представляет один бит информации
  • Возможны только два значения: true и false
  • Этот тип данных используется для простых флагов, которые отслеживают истинные/ложные условия.
  • Значение по умолчанию — ложь
  • Пример: логическое значение один = истина

уголь

  • Тип данных char — это один 16-битный символ Unicode.
  • Минимальное значение «» (или 0)
  • Максимальное значение равно ‘￿’ (или 65 535 включительно).
  • Тип данных Char используется для хранения любого символа
  • Пример: char letterA = ‘A’

Справочные типы данных

  • Ссылочные переменные создаются с использованием определенных конструкторов классов. Они используются для доступа к объектам. Эти переменные объявлены как относящиеся к определенному типу, который нельзя изменить. Например, Сотрудник, Щенок и т.д.
  • Объекты класса и различные типы переменных массива относятся к ссылочному типу данных.
  • Значение по умолчанию любой ссылочной переменной равно null.
  • Ссылочная переменная может использоваться для ссылки на любой объект объявленного типа или любого совместимого типа.
  • Пример: Животное животное = новое животное («жираф»);

Модификаторы Java

Как и в других языках, можно изменять классы, методы и т. д. с помощью модификаторов. Есть две категории модификаторов —

  • Модификаторы доступа — по умолчанию, общедоступные, защищенные, частные
  • Виден для пакета, по умолчанию. Модификаторы не нужны.
  • Виден только классу (частный).
  • Видно миру (общественность).
  • Виден пакету и всем подклассам (защищенным).
  • Модификаторы без доступа — final, abstract, strictfp
  • Модификатор static для создания методов и переменных класса.
  • Модификатор final для завершения реализации классов, методов и переменных.
  • Модификатор abstract для создания абстрактных классов и методов.
  • Модификаторы synchronized и volatile, используемые для потоков.

Основные операторы

Java предоставляет богатый набор операторов для управления переменными. Мы можем разделить все операторы Java на следующие группы:

  • Арифметические операторы
  • Реляционные операторы
  • Побитовые операторы
  • Логические операторы
  • Операторы присваивания
  • Разные операторы

Арифметические операторы

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

+ (Addition), - (Subtraction), * (Multiplication), / (Division), % (Modulus), ++ (Increment), -- (Decrement)

Реляционные операторы

Существуют следующие реляционные операторы, поддерживаемые языком Java.

== (equal to), != (not equal to), > (greater than), < (less than), >= (greater than or equal to), <= (less than or equal to)

Побитовые операторы

Java определяет несколько побитовых операторов, которые можно применять к целочисленным типам: long, int, short, char и byte.

Побитовый оператор работает с битами и выполняет побитовую операцию.

& (bitwise and), | (bitwise or), ^ (bitwise XOR), ~ (bitwise compliment), << (left shift), >> (right shift), >>> (zero fill right shift)

Логические операторы

В следующей таблице перечислены логические операторы —

&& (logical and), || (logical or), ! (logical not)

Операторы присваивания

Ниже приведены операторы присваивания, поддерживаемые языком Java.

=, +=, -=, *=, /=, %=, <<=, >>=, &=, ^=, |=

Разные операторы

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

Условный оператор ( ? : )

Условный оператор также известен как тройной оператор. Этот оператор состоит из трех операндов и используется для вычисления логических выражений. Цель оператора — решить, какое значение следует присвоить переменной. Оператор записывается как —

variable x = (expression) ? value if true : value if false

Ниже приведен пример —

Пример

public class Test {
   public static void main(String args[]) {
      int a, b;
      a = 10;
      b = (a == 1) ? 20: 30;
      System.out.println( "Value of b is : " +  b );
      b = (a == 10) ? 20: 30;
      System.out.println( "Value of b is : " + b );
   }
}

Оператор цикла

while loop - Repeats a statement or group of statements while a given condition is true. It tests the condition before executing the loop body.
for loop - Execute a sequence of statements multiple times and abbreviates the code that manages the loop variable.
do...while loop - Like a while statement, except that it tests the condition at the end of the loop body.

Операции управления циклом

break statement - Terminates the loop or switch statement and transfers execution to the statement immediately following the loop or switch.
continue statement - Causes the loop to skip the remainder of its body and immediately retest its condition prior to reiterating.

Принятие решения

if statement - An if statement consists of a boolean expression followed by one or more statements.
if...else statement - An if statement can be followed by an optional else statement, which executes when the boolean expression is false.
nested if statement - You can use one if or else if statement inside another if or else if statement(s).
switch statement - A switch statement allows a variable to be tested for equality against a list of values.

Числа

Обычно, когда мы работаем с числами, мы используем примитивные типы данных, такие как byte, int, long, double и т. д.

Пример

int i = 5000;
float gpa = 13.65f;
double mask = 125;

Однако в процессе разработки мы сталкиваемся с ситуациями, когда нам нужно использовать объекты вместо примитивных типов данных. Для этого в Java предусмотрены классы-оболочки. Все классы-оболочки (Integer, Long, Byte, Double, Float, Short) являются подклассами абстрактного класса Number. Объект класса-оболочки содержит или обертывает соответствующий примитивный тип данных. Преобразование примитивных типов данных в объекты называется упаковкой, и об этом заботится компилятор. Поэтому при использовании класса-оболочки вам просто нужно передать значение примитивного типа данных в конструктор класса-оболочки.

И объект Wrapper будет преобразован обратно в примитивный тип данных, и этот процесс называется unboxing. Класс Number является частью пакета java.lang.

Ниже приведен пример упаковки и распаковки:

Пример

public class Test {
   public static void main(String args[]) {
      Integer x = 5; // boxes int to an Integer object
      x =  x + 10;   // unboxes the Integer to a int
      System.out.println(x); 
   }
}

Числовые методы

Ниже приведен список методов экземпляра, которые реализуют все подклассы класса Number.

xxxValue()- Converts the value of this Number object to the xxx data type and returns it.
compareTo()- Compares this Number object to the argument.
equals()- Determines whether this number object is equal to the argument.

valueOf()- Returns an Integer object holding the value of the specified primitive.
toString()- Returns a String object representing the value of a specified int or Integer.

parseInt()- This method is used to get the primitive data type of a certain String.
abs()- Returns the absolute value of the argument.
ceil()- Returns the smallest integer that is greater than or equal to the argument. Returned as a double.

floor()- Returns the largest integer that is less than or equal to the argument. Returned as a double.

rint()- Returns the integer that is closest in value to the argument. Returned as a double.

round()- Returns the closest long or int, as indicated by the method's return type to the argument.
min()- Returns the smaller of the two arguments.

max()- Returns the larger of the two arguments.

exp()- Returns the base of the natural logarithms, e, to the power of the argument.
log()- Returns the natural logarithm of the argument.

pow()- Returns the value of the first argument raised to the power of the second argument.

sqrt()- Returns the square root of the argument.

sin()- Returns the sine of the specified double value.
cos()- Returns the cosine of the specified double value.
tan()- Returns the tangent of the specified double value.

asin()- Returns the arcsine of the specified double value.
acos()- Returns the arccosine of the specified double value.
atan()- Returns the arctangent of the specified double value.

atan2()- Converts rectangular coordinates (x, y) to polar coordinate (r, theta) and returns theta.

toDegrees()- Converts the argument to degrees.
toRadians()- Converts the argument to radians.

random()- Returns a random number.

Символы

Обычно, когда мы работаем с символами, мы используем примитивные типы данных char.

Пример

char ch = 'a';
// Unicode for uppercase Greek omega character
char uniChar = '\u039A'; 
// an array of chars
char[] charArray ={ 'a', 'b', 'c', 'd', 'e' };

Однако в процессе разработки мы сталкиваемся с ситуациями, когда нам нужно использовать объекты вместо примитивных типов данных. Для этого в Java предусмотрен класс-оболочка Character для примитивного типа данных char.

Класс Character предлагает ряд полезных методов класса (т. е. статических) для управления символами. Вы можете создать объект персонажа с помощью конструктора персонажа —

Character ch = new Character('a');

Компилятор Java также создаст для вас объект Character при некоторых обстоятельствах. Например, если вы передаете примитивный char в метод, который ожидает объект, компилятор автоматически преобразует char в символ для вас. Эта функция называется автоупаковкой или распаковкой, если преобразование идет в другую сторону.

Пример

// Here following primitive char 'a'
// is boxed into the Character object ch
Character ch = 'a';
// Here primitive 'x' is boxed for method test,
// return is unboxed to char 'c'
char c = test('x');

Методы символов

Ниже приведен список важных методов экземпляра, которые реализуют все подклассы класса Character.

isLetter()- Determines whether the specified char value is a letter.

isDigit()- Determines whether the specified char value is a digit.
isWhitespace()- Determines whether the specified char value is white space.

isUpperCase()- Determines whether the specified char value is uppercase.

isLowerCase()- Determines whether the specified char value is lowercase.

toUpperCase()- Returns the uppercase form of the specified char value.
toLowerCase()- Returns the lowercase form of the specified char value.
toString()- Returns a String object representing the specified character value that is, a one-character string.

Струны

Строки, которые широко используются в программировании на Java, представляют собой последовательность символов. В языке программирования Java строки рассматриваются как объекты.

Платформа Java предоставляет класс String для создания строк и управления ими. Самый прямой способ создать строку — написать —

String greeting = "Hello world!";

Всякий раз, когда он встречает строковый литерал в вашем коде, компилятор создает объект String со своим значением, в данном случае «Hello world!».

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

Пример

public class StringDemo {
   public static void main(String args[]) {
      char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.' };
      String helloString = new String(helloArray);  
      System.out.println( helloString );
   }
}

Длина строки

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

Следующая программа является примером метода length() класса String.

Пример

public class StringDemo {
   public static void main(String args[]) {
      String palindrome = "Dot saw I was Tod";
      int len = palindrome.length();
      System.out.println( "String Length is : " + len );
   }
}

Объединение строк

Класс String включает метод для объединения двух строк —

string1.concat(string2);

Это возвращает новую строку, которая является строкой1 с добавленной к ней строкой2 в конце. Вы также можете использовать метод concat() со строковыми литералами, например:

"My name is ".concat("Zara");

Строки чаще объединяются с помощью оператора +, как в —

"Hello," + " world" + "!"

что приводит к —

"Hello, world!"

Давайте посмотрим на следующий пример —

Пример

public class StringDemo {
   public static void main(String args[]) {
      String string1 = "saw I was ";
      System.out.println("Dot " + string1 + "Tod");
   }
}

Строковые методы

Вот список методов, поддерживаемых классом String —

char charAt(int index)- Returns the character at the specified index.
int compareTo(Object o)- Compares this String to another Object.
int compareTo(String anotherString)- Compares two strings lexicographically.

int compareToIgnoreCase(String str)- Compares two strings lexicographically, ignoring case differences.
String concat(String str)- Concatenates the specified string to the end of this string.
boolean contentEquals(StringBuffer sb)- Returns true if and only if this String represents the same sequence of characters as the specified StringBuffer.
static String copyValueOf(char[] data)- Returns a String that represents the character sequence in the array specified.
static String copyValueOf(char[] data, int offset, int count)- Returns a String that represents the character sequence in the array specified.
boolean endsWith(String suffix)- Tests if this string ends with the specified suffix.
boolean equals(Object anObject)- Compares this string to the specified object.
boolean equalsIgnoreCase(String anotherString)- Compares this String to another String, ignoring case considerations.
byte[] getBytes()- Encodes this String into a sequence of bytes using the platform's default charset, storing the result into a new byte array.
byte[] getBytes(String charsetName)- Encodes this String into a sequence of bytes using the named charset, storing the result into a new byte array.
void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)- Copies characters from this string into the destination character array.
int hashCode()- Returns a hash code for this string.
int indexOf(int ch)- Returns the index within this string of the first occurrence of the specified character.
int indexOf(int ch, int fromIndex)- Returns the index within this string of the first occurrence of the specified character, starting the search at the specified index.
int indexOf(String str)- Returns the index within this string of the first occurrence of the specified substring.
int indexOf(String str, int fromIndex)- Returns the index within this string of the first occurrence of the specified substring, starting at the specified index.
String intern()- Returns a canonical representation for the string object.
int lastIndexOf(int ch)- Returns the index within this string of the last occurrence of the specified character.
int lastIndexOf(int ch, int fromIndex)- Returns the index within this string of the last occurrence of the specified character, searching backward starting at the specified index.
int lastIndexOf(String str)- Returns the index within this string of the rightmost occurrence of the specified substring.
int lastIndexOf(String str, int fromIndex)- Returns the index within this string of the last occurrence of the specified substring, searching backward starting at the specified index.
int length()- Returns the length of this string.
boolean matches(String regex)- Tells whether or not this string matches the given regular expression.

boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)- Tests if two string regions are equal.
boolean regionMatches(int toffset, String other, int ooffset, int len)- Tests if two string regions are equal.
String replace(char oldChar, char newChar)- Returns a new string resulting from replacing all occurrences of oldChar in this string with newChar.
String replaceAll(String regex, String replacement)- Replaces each substring of this string that matches the given regular expression with the given replacement.
String replaceFirst(String regex, String replacement)- Replaces the first substring of this string that matches the given regular expression with the given replacement.
String[] split(String regex)- Splits this string around matches of the given regular expression.
String[] split(String regex, int limit)- Splits this string around matches of the given regular expression.
boolean startsWith(String prefix)- Tests if this string starts with the specified prefix.
boolean startsWith(String prefix, int toffset)- Tests if this string starts with the specified prefix beginning a specified index.
CharSequence subSequence(int beginIndex, int endIndex)- Returns a new character sequence that is a subsequence of this sequence.
String substring(int beginIndex)- Returns a new string that is a substring of this string.
String substring(int beginIndex, int endIndex)- Returns a new string that is a substring of this string.
char[] toCharArray()- Converts this string to a new character array.
String toLowerCase()- Converts all of the characters in this String to lower case using the rules of the default locale.
String toLowerCase(Locale locale)- Converts all of the characters in this String to lower case using the rules of the given Locale.
String toString()- This object (which is already a string!) is itself returned.
String toUpperCase()- Converts all of the characters in this String to upper case using the rules of the default locale.
String toUpperCase(Locale locale)- Converts all of the characters in this String to upper case using the rules of the given Locale.
String trim()- Returns a copy of the string, with leading and trailing whitespace omitted.
static String valueOf(primitive data type x)- Returns the string representation of the passed data type argument.

Множество

Java предоставляет структуру данных, массив, в котором хранится последовательный набор элементов одного типа фиксированного размера. Массив используется для хранения набора данных, но часто полезнее думать о массиве как о наборе переменных одного типа.

Вместо того, чтобы объявлять отдельные переменные, такие как number0, number1, … и number99, вы объявляете одну переменную-массив, такую ​​как numbers, и используете числа[0], числа[1] и…, числа[99] для представления отдельных переменных.

Объявление переменных массива

Чтобы использовать массив в программе, вы должны объявить переменную для ссылки на массив и указать тип массива, на который может ссылаться переменная. Вот синтаксис объявления переменной массива:

Синтаксис

dataType[] arrayRefVar;   // preferred way.
or
dataType arrayRefVar[];  // works but not preferred way.

Пример

Следующие фрагменты кода являются примерами этого синтаксиса:

double[] myList;   // preferred way.
or
double myList[];   // works but not preferred way.

Создание массивов

Вы можете создать массив, используя новый оператор со следующим синтаксисом:

Синтаксис

arrayRefVar = new dataType[arraySize];

Вышеприведенное утверждение делает две вещи:

  • Он создает массив, используя новый dataType[arraySize].
  • Он присваивает ссылку на вновь созданный массив переменной arrayRefVar.

Объявление переменной массива, создание массива и присвоение ссылки на массив переменной можно объединить в одном операторе, как показано ниже:

dataType[] arrayRefVar = new dataType[arraySize];

В качестве альтернативы вы можете создавать массивы следующим образом:

dataType[] arrayRefVar = {value0, value1, ..., valuek};

Доступ к элементам массива осуществляется через индекс. Индексы массива отсчитываются от 0; то есть они начинаются с 0 до arrayRefVar.length-1.

Пример

Следующий оператор объявляет переменную массива myList, создает массив из 10 элементов двойного типа и присваивает его ссылку myList —

double[] myList = new double[10];

Пример

Вот полный пример, показывающий, как создавать, инициализировать и обрабатывать массивы:

public class TestArray {
   public static void main(String[] args) {
      double[] myList = {1.9, 2.9, 3.4, 3.5};
      // Print all the array elements
      for (int i = 0; i < myList.length; i++) {
         System.out.println(myList[i] + " ");
      }
     
      // Summing all elements
      double total = 0;
      for (int i = 0; i < myList.length; i++) {
         total += myList[i];
      }
      System.out.println("Total is " + total);
      
      // Finding the largest element
      double max = myList[0];
      for (int i = 1; i < myList.length; i++) {
         if (myList[i] > max) max = myList[i];
      }
      System.out.println("Max is " + max);  
   }
}

Питон

Определение и особенности

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

  • Python интерпретируется — Python обрабатывается интерпретатором во время выполнения. Вам не нужно компилировать программу перед ее выполнением. Это похоже на PERL и PHP.
  • Python интерактивен — вы можете сидеть в командной строке Python и напрямую взаимодействовать с интерпретатором, чтобы писать свои программы.
  • Python является объектно-ориентированным — Python поддерживает объектно-ориентированный стиль или метод программирования, который инкапсулирует код в объекты.
  • Python — это язык для начинающих. Python — отличный язык для начинающих программистов, который поддерживает разработку широкого спектра приложений, от простой обработки текста до веб-браузеров и игр.
  • Он предоставляет динамические типы данных очень высокого уровня и поддерживает динамическую проверку типов.
  • Его можно легко интегрировать с C, C++, COM, ActiveX, CORBA и Java.

Напишите «Hello world» с помощью python

print("Hello World");

Давайте напишем простую программу Python в скрипте. Файлы Python имеют расширение .py. Введите приведенный выше исходный код в файл test.py —

We assume that you have Python interpreter set in PATH variable. Now, try to run this program as follows −
python test.py
Hello World

Это приведет к выводу Hello World, как показано в приведенном выше блоке.

Базовый синтаксис

Идентификаторы Python

Идентификатор Python — это имя, используемое для идентификации переменной, функции, класса, модуля или другого объекта. Идентификатор начинается с буквы от A до Z или от a до z или символа подчеркивания (_), за которым следует ноль или более букв, символов подчеркивания и цифр (от 0 до 9).

Python не позволяет использовать символы препинания, такие как @, $ и %, в идентификаторах. Python — язык программирования с учетом регистра. Таким образом, Manpower и manpower — это два разных идентификатора в Python.

Вот соглашения об именах для идентификаторов Python:

  • Имена классов начинаются с заглавной буквы. Все остальные идентификаторы начинаются со строчной буквы.
  • Если идентификатор начинается с одного подчеркивания в начале, это означает, что идентификатор является закрытым.
  • Если идентификатор начинается с двух знаков подчеркивания, это означает, что идентификатор является строго закрытым.
  • Если идентификатор также заканчивается двумя знаками подчеркивания в конце, идентификатор является специальным именем, определяемым языком.

Линии и отступы

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

Количество пробелов в отступе может быть разным, но все операторы внутри блока должны иметь одинаковый отступ. Например —

if true
   print("true");
else:
   print(false");

Многострочные операторы

Операторы в Python обычно заканчиваются новой строкой. Однако Python позволяет использовать символ продолжения строки (\), чтобы обозначить, что строка должна продолжаться. Например —

total = item_one + \
        item_two + \
        item_three;

Цитата в Питоне

Python принимает одинарные (‘), двойные («) и тройные (’’’ или »””) кавычки для обозначения строковых литералов, если кавычки одного и того же типа начинаются и заканчиваются в строке.

Тройные кавычки используются для переноса строки на несколько строк. Например, все следующее является законным —

word = 'word'
sentence = "This is a sentence"
paragraph = """ This is a paragraph. It is made up of
multiple lines and sentences."""

Комментарии в Python

Знак решетки (#), который не находится внутри строкового литерала, начинает комментарий. Все символы после # и до конца физической строки являются частью комментария, и интерпретатор Python их игнорирует. Следующая строка в тройных кавычках также игнорируется интерпретатором Python и может использоваться как многострочный комментарий:

#First comment
print("Hello World"); #Second comment
''' This is a multi line 
comment. '''

Несколько операторов в одной строке

Точка с запятой ( ; ) позволяет размещать несколько операторов в одной строке, если ни один из них не начинает новый блок кода. Вот пример фрагмента с точкой с запятой —

import sys; x = 'foo'; sys.stdout.write(x + '\n')

Типы данных Python

Переменные Python

Переменные — это не что иное, как зарезервированные области памяти для хранения значений. Это означает, что когда вы создаете переменную, вы резервируете место в памяти.

В зависимости от типа данных переменной интерпретатор выделяет память и решает, что можно хранить в зарезервированной памяти. Следовательно, присваивая переменным разные типы данных, вы можете хранить в этих переменных целые числа, десятичные дроби или символы.

Данные, хранящиеся в памяти, могут быть разных типов. Python имеет пять стандартных типов данных —

  1. Числа

2. Строка

3. Список

4. Кортеж

5. Словарь

#Numbers
var1 = 1
var2 = 10
#String
str = "Hello World";
#List
list = ['john', '765', '3.4'];
#Tuples
tuple = ( 'john', '765', '3.4');
#Dictionary
dictionary = { 'name':'john', 'code':'234', 'department':'sales'};

Числа

Числовые типы данных хранят числовые значения. Это неизменяемые типы данных, что означает, что изменение значения числового типа данных приводит к созданию нового выделенного объекта.

Числовые объекты создаются, когда вы присваиваете им значение. Например —

var1 = 1
var2 = 10

Python поддерживает четыре различных числовых типа —

  • int (целые числа со знаком) — их часто называют просто целыми числами или целыми числами, они представляют собой положительные или отрицательные целые числа без десятичной точки.
  • длинные (длинные целые числа) — также называемые длинными, они представляют собой целые числа неограниченного размера, записанные как целые числа, за которыми следует буква L в верхнем или нижнем регистре.
  • float (действительные значения с плавающей запятой) — также называемые числами с плавающей запятой, они представляют действительные числа и записываются с десятичной точкой, разделяющей целую и дробную части. Поплавки также могут быть представлены в экспоненциальном представлении, где E или e указывают степень числа 10 (2,5e2 = 2,5 x 102 = 250).
  • complex (комплексные числа) — имеют вид a + bJ, где a и b — числа с плавающей запятой, а J (или j) представляет собой квадратный корень из -1 (который является мнимым числом). Действительная часть числа равна а, а мнимая — b. Комплексные числа редко используются в программировании на Python.

Преобразование числового типа

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

  • Введите int(x), чтобы преобразовать x в простое целое число.
  • Введите long(x), чтобы преобразовать x в длинное целое.
  • Введите float(x), чтобы преобразовать x в число с плавающей запятой.
  • Введите complex(x), чтобы преобразовать x в комплексное число с действительной частью x и нулевой мнимой частью.
  • Введите complex(x, y), чтобы преобразовать x и y в комплексное число с действительной частью x и мнимой частью y. x и y являются числовыми выражениями.

Математические функции

abs(x)- The absolute value of x: the (positive) distance between x and zero.
ceil(x)- The ceiling of x: the smallest integer not less than x.
cmp(x, y)- -1 if x < y, 0 if x == y, or 1 if x > y
exp(x)- The exponential of x: e^x  
 
fabs(x)- The absolute value of x.
floor(x)- The floor of x: the largest integer not greater than x
log(x)- The natural logarithm of x, for x> 0
log10(x)- The base-10 logarithm of x for x> 0.
max(x1, x2,...)- The largest of its arguments: the value closest to positive infinity
min(x1, x2,...)- The smallest of its arguments: the value closest to negative infinity
modf(x)- The fractional and integer parts of x in a two-item tuple. Both parts have the same sign as x. The integer part is returned as a float.
pow(x, y)- The value of x^**y.
round(x [,n])- x rounded to n digits from the decimal point. Python rounds away from zero as a tie-breaker: round(0.5) is 1.0 and round(-0.5) is -1.0.
sqrt(x)- The square root of x for x > 0

Функции случайных чисел

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

choice(seq) - A random item from a list, tuple, or string.
randrange ([start,] stop [,step]) - A randomly selected element from range(start, stop, step)
random() - A random float r, such that 0 is less than or equal to r and r is less than 1
seed([x]) - Sets the integer starting value used in generating random numbers. Call this function before calling any other random module function. Returns None
shuffle(lst) - Randomizes the items of a list in place. Returns None.
uniform(x, y) - A random float r, such that x is less than or equal to r and r is less than y

Струны

Строки в Python идентифицируются как непрерывный набор символов, представленных в кавычках. Python позволяет использовать пары одинарных или двойных кавычек. Подмножества строк можно взять с помощью оператора среза ([ ] и [:] ) с индексами, начинающимися с 0 в начале строки и работающими от -1 в конце. Создание строк так же просто, как присвоение значения переменной.

Знак плюс (+) — это оператор конкатенации строк, а звездочка (*) — оператор повторения. Например

str = 'Hello World!'

print str          # Prints complete string
print str[0]       # Prints first character of the string
print str[2:5]     # Prints characters starting from 3rd to 5th
print str[2:]      # Prints string starting from 3rd character
print str * 2      # Prints string two times
print str + "TEST" # Prints concatenated string

Доступ к значениям в строках

#!/usr/bin/python

var1 = 'Hello World!'
var2 = "Python Programming"

print "var1[0]: ", var1[0]
print "var2[1:5]: ", var2[1:5]

Строковые специальные операторы

+ - Concatenation - Adds values on either side of the operator
* - Repetition - Creates new strings, concatenating multiple copies of the same string
[] - Slice - Gives the character from the given index
[:] - Range Slice - Gives the characters from the given range
in - Membership - Returns true if a character exists in the given string
not in - Membership - Returns true if a character does not exist in the given string
r/R - Raw String - Suppresses actual meaning of Escape characters. The syntax for raw strings is exactly the same as for normal strings with the exception of the raw string operator, the letter "r," which precedes the quotation marks. The "r" can be lowercase (r) or uppercase (R) and must be placed immediately preceding the first quote mark.
% - Format - Performs String formatting

Строковые методы

capitalize() - Capitalizes first letter of string
center(width, fillchar)- Returns a space-padded string with the original string centered to a total of width columns.
count(str, beg= 0,end=len(string))- Counts how many times str occurs in string or in a substring of string if starting index beg and ending index end are given.
decode(encoding='UTF-8',errors='strict')- Decodes the string using the codec registered for encoding. encoding defaults to the default string encoding.

encode(encoding='UTF-8',errors='strict')- Returns encoded string version of string; on error, default is to raise a ValueError unless errors is given with 'ignore' or 'replace'.
endswith(suffix, beg=0, end=len(string))- Determines if string or a substring of string (if starting index beg and ending index end are given) ends with suffix; returns true if so and false otherwise.
expandtabs(tabsize=8)- Expands tabs in string to multiple spaces; defaults to 8 spaces per tab if tabsize not provided.
find(str, beg=0 end=len(string))- Determine if str occurs in string or in a substring of string if starting index beg and ending index end are given returns index if found and -1 otherwise.

index(str, beg=0, end=len(string))- Same as find(), but raises an exception if str not found.

isalnum()- Returns true if string has at least 1 character and all characters are alphanumeric and false otherwise.
isalpha()- Returns true if string has at least 1 character and all characters are alphabetic and false otherwise.

isdigit()- Returns true if string contains only digits and false otherwise.

islower()- Returns true if string has at least 1 cased character and all cased characters are in lowercase and false otherwise.
isnumeric()- Returns true if a unicode string contains only numeric characters and false otherwise
isspace()- Returns true if string contains only whitespace characters and false otherwise.

istitle()- Returns true if string is properly "titlecased" and false otherwise.

isupper()- Returns true if string has at least one cased character and all cased characters are in uppercase and false otherwise.

join(seq)- Merges (concatenates) the string representations of elements in sequence seq into a string, with separator string.

len(string)- Returns the length of the string

ljust(width[, fillchar])- Returns a space-padded string with the original string left-justified to a total of width columns.

lower()- Converts all uppercase letters in string to lowercase.

lstrip()- Removes all leading whitespace in string.

maketrans()- Returns a translation table to be used in translate function.

max(str)- Returns the max alphabetical character from the string str.

min(str)- Returns the min alphabetical character from the string str.

replace(old, new [, max])- Replaces all occurrences of old in string with new or at most max occurrences if max given.
rfind(str, beg=0,end=len(string))- Same as find(), but search backwards in string.
rindex( str, beg=0, end=len(string))- Same as index(), but search backwards in string.

rjust(width,[, fillchar])- Returns a space-padded string with the original string right-justified to a total of width columns.

rstrip()- Removes all trailing whitespace of string.

split(str="", num=string.count(str))- Splits string according to delimiter str (space if not provided) and returns list of substrings; split into at most num substrings if given.

splitlines( num=string.count('\n'))- Splits string at all (or num) NEWLINEs and returns a list of each line with NEWLINEs removed.
startswith(str, beg=0,end=len(string))- Determines if string or a substring of string (if starting index beg and ending index end are given) starts with substring str; returns true if so and false otherwise.

strip([chars])- Performs both lstrip() and rstrip() on string.
swapcase()- Inverts case for all letters in string.

title()- Returns "titlecased" version of string, that is, all words begin with uppercase and the rest are lowercase.

translate(table, deletechars="")- Translates string according to translation table str(256 chars), removing those in the del string.

upper()- Converts lowercase letters in string to uppercase.
zfill (width)- Returns original string leftpadded with zeros to a total of width characters; intended for numbers, zfill() retains any sign given (less one zero).
isdecimal()- Returns true if a unicode string contains only decimal characters and false otherwise.

Списки

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

Доступ к значениям, хранящимся в списке, можно получить с помощью оператора среза ([ ] и [:]) с индексами, начинающимися с 0 в начале списка и заканчивающимися до -1. Знак плюс (+) — это оператор объединения списков, а звездочка (*) — оператор повторения. Например —

list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
tinylist = [123, 'john']

print list          # Prints complete list
print list[0]       # Prints first element of the list
print list[1:3]     # Prints elements starting from 2nd till 3rd 
print list[2:]      # Prints elements starting from 3rd element
print tinylist * 2  # Prints list two times
print list + tinylist # Prints concatenated lists

Доступ к значениям в списках

Чтобы получить доступ к значениям в списках, используйте квадратные скобки для нарезки вместе с индексом или индексами, чтобы получить значение, доступное по этому индексу. Например —

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]

Основные операции со списками

len([1, 2, 3]) o/p 3 Length, 
[1, 2, 3] + [4, 5, 6] o/p [1, 2, 3, 4, 5, 6] Concatenation,
['Hi!'] * 4 o/p ['Hi!', 'Hi!', 'Hi!', 'Hi!'] Repetition,
3 in [1, 2, 3] o/p True Membership,
for x in [1, 2, 3]: print x, o/p 1 2 3 Iteration.

Встроенные функции и методы списка

Функции

cmp(list1, list2)- Compares elements of both lists.

len(list)- Gives the total length of the list.
max(list)- Returns item from the list with max value.

min(list)- Returns item from the list with min value.

list(seq)- Converts a tuple into list.

Методы

list.append(obj)- Appends object obj to list
list.count(obj)- Returns count of how many times obj occurs in list
list.extend(seq)- Appends the contents of seq to list
list.index(obj)- Returns the lowest index in list that obj appears
list.insert(index, obj)- Inserts object obj into list at offset index
list.pop(obj=list[-1])- Removes and returns last object or obj from list
list.remove(obj)- Removes object obj from list
list.reverse()- Reverses objects of list in place
list.sort([func])- Sorts objects of list, use compare func if given

Кортежи

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

Основные различия между списками и кортежами: списки заключены в квадратные скобки ( [ ] ), и их элементы и размер могут быть изменены, а кортежи заключены в круглые скобки ( ( ) ) и не могут быть обновлены. Кортежи можно рассматривать как списки только для чтения. Например —

tuple = ( 'abcd', 786 , 2.23, 'john', 70.2  )
tinytuple = (123, 'john')

print tuple               # Prints the complete tuple
print tuple[0]            # Prints first element of the tuple
print tuple[1:3]          # Prints elements of the tuple starting from 2nd till 3rd 
print tuple[2:]           # Prints elements of the tuple starting from 3rd element
print tinytuple * 2       # Prints the contents of the tuple twice
print tuple + tinytuple   # Prints concatenated tuples

Доступ к значениям в кортежах

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

tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5, 6, 7 );
print "tup1[0]: ", tup1[0];
print "tup2[1:5]: ", tup2[1:5];

Основные операции с кортежами

len([1, 2, 3]) o/p 3 Length, 
[1, 2, 3] + [4, 5, 6] o/p [1, 2, 3, 4, 5, 6] Concatenation,
['Hi!'] * 4 o/p ['Hi!', 'Hi!', 'Hi!', 'Hi!'] Repetition,
3 in [1, 2, 3] o/p True Membership,
for x in [1, 2, 3]: print x, o/p 1 2 3 Iteration.

Встроенные функции кортежа

cmp(tuple1, tuple2) - Compares elements of both tuples.
len(tuple) - Gives the total length of the tuple.
max(tuple) - Returns item from the tuple with max value.
min(tuple) - Returns item from the tuple with min value.
tuple(seq) - Converts a list into tuple.

Словарь

Словари Python — это своего рода хеш-таблицы. Они работают как ассоциативные массивы или хэши в Perl и состоят из пар ключ-значение. Ключ словаря может быть практически любого типа Python, но обычно это числа или строки. С другой стороны, значениями могут быть любые произвольные объекты Python.

Словари заключаются в фигурные скобки ({}), а значения можно назначать и получать к ним доступ с помощью квадратных скобок ([]). Например —

dict = {}
dict['one'] = "This is one"
dict[2]     = "This is two"

tinydict = {'name': 'john','code':6734, 'dept': 'sales'}


print dict['one']       # Prints value for 'one' key
print dict[2]           # Prints value for 2 key
print tinydict          # Prints complete dictionary
print tinydict.keys()   # Prints all the keys
print tinydict.values() # Prints all the values

Доступ к значениям в словаре

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

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
print "dict['Name']: ", dict['Name']
print "dict['Age']: ", dict['Age']

Встроенные словарные функции и методы

Функции

cmp(dict1, dict2) - Compares elements of both dict.
len(dict) - Gives the total length of the dictionary. This would be equal to the number of items in the dictionary.
str(dict) - Produces a printable string representation of a dictionary
type(variable) - Returns the type of the passed variable. If passed variable is dictionary, then it would return a dictionary type.

Методы

dict.clear() - Removes all elements of dictionary dict
dict.copy() - Returns a shallow copy of dictionary dict
dict.fromkeys() - Create a new dictionary with keys from seq and values set to value.
dict.get(key, default=None) - For key key, returns value or default if key not in dictionary
dict.has_key(key) - Returns true if key in dictionary dict, false otherwise
dict.items() - Returns a list of dict's (key, value) tuple pairs
dict.keys() - Returns list of dictionary dict's keys

dict.setdefault(key, default=None) - Similar to get(), but will set dict[key]=default if key is not already in dict
dict.update(dict2) - Adds dictionary dict2's key-values pairs to dict

dict.values() - Returns list of dictionary dict's values

Преобразование типа данных

Иногда вам может потребоваться выполнить преобразования между встроенными типами. Для преобразования между типами вы просто используете имя типа как функцию.

int(x [,base])
Converts x to an integer. base specifies the base if x is a string.
long(x [,base] )
Converts x to a long integer. base specifies the base if x is a string.
float(x)
Converts x to a floating-point number.
complex(real [,imag])
Creates a complex number.
str(x)
Converts object x to a string representation.
repr(x)
Converts object x to an expression string.
eval(str)
Evaluates a string and returns an object.
tuple(s)
Converts s to a tuple.
list(s)
Converts s to a list.
set(s)
Converts s to a set.
dict(d)
Creates a dictionary. d must be a sequence of (key,value) tuples.
frozenset(s)
Converts s to a frozen set.
chr(x)
Converts an integer to a character.
unichr(x)
Converts an integer to a Unicode character.
ord(x)
Converts a single character to its integer value.
hex(x)
Converts an integer to a hexadecimal string.
oct(x)
Converts an integer to an octal string.

Основные операторы

Язык Python поддерживает следующие типы операторов.

  • Арифметические операторы
  • Операторы сравнения (реляционные)
  • Операторы присваивания
  • Логические операторы
  • Побитовые операторы
  • Операторы членства
  • Операторы идентификации

подробнее см. здесь

Арифметические операторы Python

+ Addition, - Subtraction, * Multiplication, / Division, % Modulus, ** Exponent, // Floor division

Операторы сравнения Python

Эти операторы сравнивают значения по обе стороны от них и определяют отношение между ними. Их также называют реляционными операторами.

==, !=,<>, >, <, >=, <=

Операторы присваивания Python

=, += Add AND, -= Subtract AND, *= Multiply AND, /= Divide AND, %= Modulus AND, **= Exponent AND, //= Floor Division

Побитовые операторы Python

Побитовый оператор работает с битами и выполняет побитовую операцию.

& Binary AND, | Binary OR, ^ Binary XOR, ~ Binary Ones Complement, << Binary Left Shift, >> Binary Right Shift

Логические операторы Python

and Logical AND, or Logical OR, not Logical NOT

Операторы членства Python

Операторы принадлежности Python проверяют принадлежность к последовательности, такой как строки, списки или кортежи.

in, not in

Операторы идентификации Python

Операторы идентификации сравнивают ячейки памяти двух объектов.

is, not is

Принятие решений

Принятие решения — это предвосхищение условий, возникающих при выполнении программы, и указание действий, предпринимаемых в соответствии с условиями.

Структуры решений оценивают несколько выражений, результатом которых является ИСТИНА или ЛОЖЬ. Вам нужно определить, какое действие предпринять и какие операторы выполнить, если результат ИСТИНА или ЛОЖЬ в противном случае.

if statements - An if statement consists of a boolean expression followed by one or more statements.
if...else statements - An if statement can be followed by an optional else statement, which executes when the boolean expression is FALSE.
nested if statements - You can use one if or else if statement inside another if or else if statement(s).

Оператор цикла

Оператор цикла позволяет нам выполнять оператор или группу операторов несколько раз.

while loop - Repeats a statement or group of statements while a given condition is TRUE. It tests the condition before executing the loop body.
for loop - Executes a sequence of statements multiple times and abbreviates the code that manages the loop variable.
nested loops - You can use one or more loop inside any another while, for or do..while loop.

Операторы управления циклом

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

break statement - Terminates the loop statement and transfers execution to the statement immediately following the loop.
continue statement - Causes the loop to skip the remainder of its body and immediately retest its condition prior to reiterating.
pass statement - The pass statement in Python is used when a statement is required syntactically but you do not want any command or code to execute.

JavaScript

Определение и особенности

JavaScript – это легкий интерпретируемый язык программирования. Он предназначен для создания сетецентрических приложений. JavaScript очень легко внедрить, поскольку он интегрирован с HTML. Он открытый и кроссплатформенный.

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

JavaScript можно реализовать с помощью инструкций JavaScript, которые помещаются в HTML-теги ‹script›… ‹/script› на веб-странице.

Вы можете разместить теги ‹script›, содержащие ваш код JavaScript, в любом месте веб-страницы, но обычно рекомендуется размещать его внутри тегов ‹head›.

Тег ‹script› предупреждает программу браузера о том, что нужно начать интерпретировать весь текст между этими тегами как сценарий. Простой синтаксис вашего JavaScript будет выглядеть следующим образом.

<script ...>
   JavaScript code
</script>

написать «Hello World» с помощью Javascript

<html>
   <body>   
      <script language = "javascript" type = "text/javascript">
         <!--
            document.write("Hello World!")
         //-->
      </script>      
   </body>
</html>

Существует возможность включать код JavaScript в любом месте HTML-документа. Однако наиболее предпочтительные способы включения JavaScript в файл HTML следующие:

  • Скрипт в разделе ‹head›…‹/head›.
  • Скрипт в разделе ‹body›…‹/body›.
  • Скрипт в разделах ‹body›…‹/body› и ‹head›…‹/head›.
  • Сценарий во внешнем файле, а затем включить его в раздел ‹head›…‹/head›.

Клиентский JavaScript

Клиентский JavaScript — наиболее распространенная форма языка. Сценарий должен быть включен в HTML-документ или на него должна быть ссылка, чтобы код мог быть интерпретирован браузером.

Это означает, что веб-страница не обязательно должна быть статическим HTML, но может включать программы, которые взаимодействуют с пользователем, управляют браузером и динамически создают HTML-контент.

Клиентский механизм JavaScript обеспечивает множество преимуществ по сравнению с традиционными серверными сценариями CGI. Например, вы можете использовать JavaScript, чтобы проверить, ввел ли пользователь действительный адрес электронной почты в поле формы.

Код JavaScript выполняется, когда пользователь отправляет форму, и только если все записи действительны, они будут отправлены на веб-сервер.

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

Достоинства использования JavaScript:

  • Меньше взаимодействия с сервером — вы можете проверить ввод пользователя перед отправкой страницы на сервер. Это экономит трафик сервера, что означает меньшую нагрузку на ваш сервер.
  • Немедленная обратная связь с посетителями. Им не нужно ждать перезагрузки страницы, чтобы увидеть, не забыли ли они что-то ввести.
  • Повышенная интерактивность. Вы можете создавать интерфейсы, которые реагируют, когда пользователь наводит на них курсор мыши или активирует их с помощью клавиатуры.
  • Более широкие интерфейсы. Вы можете использовать JavaScript для включения таких элементов, как компоненты перетаскивания и ползунки, чтобы предоставить посетителям вашего сайта богатый интерфейс.

Ограничения использования JavaScript —

  • Мы не можем рассматривать JavaScript как полноценный язык программирования. В нем отсутствуют следующие важные функции —
  • Клиентский JavaScript не позволяет читать или записывать файлы. Это было сохранено из соображений безопасности.
  • JavaScript нельзя использовать для сетевых приложений, потому что такая поддержка недоступна.
  • JavaScript не поддерживает многопоточность или многопроцессорность.

Опять же, JavaScript — это легкий интерпретируемый язык программирования, который позволяет вам встраивать интерактивность в статические страницы HTML.

Все современные браузеры имеют встроенную поддержку JavaScript. Часто вам может потребоваться включить или отключить эту поддержку вручную.

Базовый синтаксис

Точки с запятой необязательны

За простыми операторами в JavaScript обычно следует символ точки с запятой, как и в C, C++ и Java. JavaScript, однако, позволяет вам опустить эту точку с запятой, если каждое из ваших утверждений размещено на отдельной строке. Например, следующий код можно написать без точек с запятой.

<script language = "javascript" type = "text/javascript">
   <!--
      var1 = 10
      var2 = 20
   //-->
</script>

Но при форматировании в одну строку следующим образом вы должны использовать точки с запятой —

<script language = "javascript" type = "text/javascript">
   <!--
      var1 = 10; var2 = 20;
   //-->
</script>

Чувствительность к регистру

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

Таким образом, идентификаторы Time и TIME будут иметь разное значение в JavaScript.

ПРИМЕЧАНИЕ. Следует соблюдать осторожность при написании имен переменных и функций в JavaScript.

Комментарии в JavaScript

JavaScript поддерживает комментарии как в стиле C, так и в стиле C ++, таким образом —

  • Любой текст между // и концом строки рассматривается как комментарий и игнорируется JavaScript.
  • Любой текст между символами /* и */ рассматривается как комментарий. Это может занимать несколько строк.
  • JavaScript также распознает последовательность открытия комментариев HTML ‹! — . JavaScript обрабатывает это как однострочный комментарий, так же как и комментарий //.
  • Последовательность закрытия HTML-комментария → не распознается JavaScript, поэтому она должна быть записана как // —

Пример

В следующем примере показано, как использовать комментарии в JavaScript.

<script language = "javascript" type = "text/javascript">
   <!--
      // This is a comment. It is similar to comments in C++
   
      /*
      * This is a multi-line comment in JavaScript
      * It is very similar to comments in C Programming
      */
   //-->
</script>

Типы данных JavaScript

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

JavaScript позволяет вам работать с тремя примитивными типами данных —

  • Числа, например. 123, 120,50 и т. д.
  • Строки текста, например. «Эта текстовая строка» и т. д.
  • логическое значение, например. правда или ложь.

JavaScript также определяет два простых типа данных, null и undefined, каждый из которых определяет только одно значение. В дополнение к этим примитивным типам данных JavaScript поддерживает составной тип данных, известный как object.

Примечание. JavaScript не делает различий между целыми значениями и значениями с плавающей запятой. Все числа в JavaScript представлены в виде значений с плавающей запятой. JavaScript представляет числа, используя 64-битный формат с плавающей запятой, определенный стандартом IEEE 754.

Переменные JavaScript

Как и во многих других языках программирования, в JavaScript есть переменные. Переменные можно рассматривать как именованные контейнеры. Вы можете поместить данные в эти контейнеры, а затем обратиться к данным, просто назвав контейнер.

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

<script type = "text/javascript">
   <!--
      var money;
      var name;
   //-->
</script>

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

JavaScript — это нетипизированный язык. Это означает, что переменная JavaScript может содержать значение любого типа данных. В отличие от многих других языков, вам не нужно сообщать JavaScript во время объявления переменной, какой тип значения будет содержать переменная. Тип значения переменной может измениться во время выполнения программы, и JavaScript позаботится об этом автоматически.

Областью действия переменной является область вашей программы, в которой она определена. Переменные JavaScript имеют только две области видимости.

  • Глобальные переменные. Глобальная переменная имеет глобальную область действия, что означает, что ее можно определить в любом месте вашего кода JavaScript.
  • Локальные переменные — локальная переменная будет видна только внутри функции, в которой она определена. Параметры функции всегда являются локальными для этой функции.

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

<html>
   <body onload = checkscope();>   
      <script type = "text/javascript">
         <!--
            var myVar = "global";      // Declare a global variable
            function checkscope( ) {
               var myVar = "local";    // Declare a local variable
               document.write(myVar);
            }
         //-->
      </script>     
   </body>
</html>

При именовании переменных в JavaScript помните о следующих правилах.

  • Вы не должны использовать какие-либо зарезервированные ключевые слова JavaScript в качестве имени переменной. Эти ключевые слова упоминаются в следующем разделе. Например, недопустимые имена переменных break или boolean.
  • Имена переменных JavaScript не должны начинаться с цифры (0–9). Они должны начинаться с буквы или символа подчеркивания. Например, 123test — недопустимое имя переменной, а _123test — допустимое.
  • Имена переменных JavaScript чувствительны к регистру. Например, Имя и имя — это две разные переменные.

Зарезервированные слова JavaScript

Список всех зарезервированных слов в JavaScript приведен в следующей таблице. Их нельзя использовать в качестве переменных JavaScript, функций, методов, меток циклов или любых имен объектов.

abstract, else, instanceof, switch, boolean, enum, int, synchronized, break, export, interface, this, byte, extends, long, throw, case, false, native, throws, catch, final, new, transient, char, finally, null, true, class, float, package, try, const, for, private, typeof, continue, function, protected, var, debugger, goto, public, void, default, if, return, volatile, delete, implements, short, while, do, import, static, with, double, in, super

Основные операторы

JavaScript поддерживает следующие типы операторов.

  • Арифметические операторы
  • Операторы сравнения
  • Логические (или реляционные) операторы
  • Операторы присваивания
  • Условные (или тернарные) операторы

Арифметические операторы

JavaScript поддерживает следующие арифметические операторы —

+ (Addition), - (Subtraction), * (Multiplication), / (Division), % (Modulus), ++ (Increment), -- (Decrement)

Операторы сравнения

JavaScript поддерживает следующие операторы сравнения —

= = (Equal), != (Not Equal), > (Greater than), < (Less than), >= (Greater than or Equal to), <= (Less than or Equal to)

Логические операторы

JavaScript поддерживает следующие логические операторы —

&& (Logical AND), || (Logical OR), ! (Logical NOT)

Побитовые операторы

JavaScript поддерживает следующие побитовые операторы —

& (Bitwise AND), | (BitWise OR), ^ (Bitwise XOR), ~ (Bitwise Not), << (Left Shift), >> (Right Shift), >>> (Right shift with Zero)

Операторы присваивания

JavaScript поддерживает следующие операторы присваивания —

= (Simple Assignment ), += (Add and Assignment), −= (Subtract and Assignment), *= (Multiply and Assignment), /= (Divide and Assignment), %= (Modules and Assignment)

Разное Оператор

Здесь мы обсудим два оператора, весьма полезных в JavaScript: оператор условия (? :) и оператор typeof.

Условный оператор (? :)

Условный оператор сначала оценивает выражение на истинное или ложное значение, а затем выполняет одно из двух заданных утверждений в зависимости от результата оценки.

? : (Conditional )
If Condition is true? Then value X : Otherwise value Y

Заявления о решении

если заявление

Оператор if — это основной управляющий оператор, который позволяет JavaScript принимать решения и выполнять операторы условно.

Синтаксис

Синтаксис базового оператора if следующий:

if (expression) {
   Statement(s) to be executed if expression is true
}

Пример

<html>
   <body>     
      <script type = "text/javascript">
         <!--
            var age = 20;
         
            if( age > 18 ) {
               document.write("<b>Qualifies for driving</b>");
            }
         //-->
      </script>      
      <p>Set the variable to different value and then try...</p>
   </body>
</html>

если… иначе заявление

Оператор if…else — это следующая форма управляющего оператора, которая позволяет JavaScript выполнять операторы более контролируемым образом.

Синтаксис

if (expression) {
   Statement(s) to be executed if expression is true
} else {
   Statement(s) to be executed if expression is false
}

Пример

<html>
   <body>   
      <script type = "text/javascript">
         <!--
            var age = 15;
         
            if( age > 18 ) {
               document.write("<b>Qualifies for driving</b>");
            } else {
               document.write("<b>Does not qualify for driving</b>");
            }
         //-->
      </script>     
      <p>Set the variable to different value and then try...</p>
   </body>
</html>

если… иначе если… заявление

Оператор if…else if… — это расширенная форма оператора if…else, которая позволяет JavaScript принимать правильные решения из нескольких условий.

Синтаксис

Синтаксис оператора if-else-if следующий:

if (expression 1) {
   Statement(s) to be executed if expression 1 is true
} else if (expression 2) {
   Statement(s) to be executed if expression 2 is true
} else if (expression 3) {
   Statement(s) to be executed if expression 3 is true
} else {
   Statement(s) to be executed if no expression is true
}

Пример

<html>
   <body>   
      <script type = "text/javascript">
         <!--
            var book = "maths";
            if( book == "history" ) {
               document.write("<b>History Book</b>");
            } else if( book == "maths" ) {
               document.write("<b>Maths Book</b>");
            } else if( book == "economics" ) {
               document.write("<b>Economics Book</b>");
            } else {
               document.write("<b>Unknown Book</b>");
            }
         //-->
      </script>      
      <p>Set the variable to different value and then try...</p>
   </body>
<html>

Выключатель

Целью оператора switch является предоставление выражения для оценки и нескольких различных операторов для выполнения в зависимости от значения выражения. Интерпретатор сверяет каждый case со значением выражения, пока не будет найдено совпадение. Если ничего не совпадает, будет использовано условие по умолчанию.

switch (expression) {
   case condition 1: statement(s)
   break;
   
   case condition 2: statement(s)
   break;
   ...
   
   case condition n: statement(s)
   break;
   
   default: statement(s)
}

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

Пример

<html>
   <body>   
      <script type = "text/javascript">
         <!--
            var grade = 'A';
            document.write("Entering switch block<br />");
            switch (grade) {
               case 'A': document.write("Good job<br />");
               break;
            
               case 'B': document.write("Pretty good<br />");
               break;
            
               case 'C': document.write("Passed<br />");
               break;
            
               case 'D': document.write("Not so good<br />");
               break;
            
               case 'F': document.write("Failed<br />");
               break;
            
               default:  document.write("Unknown grade<br />")
            }
            document.write("Exiting switch block");
         //-->
      </script>      
      <p>Set the variable to different value and then try...</p>
   </body>
</html>

Цикл while

Самый простой цикл в JavaScript — это цикл while, который будет обсуждаться в этой главе. Целью цикла while является многократное выполнение оператора или блока кода, пока выражение истинно. Как только выражение становится ложным, цикл завершается.

Синтаксис

Синтаксис цикла while в JavaScript следующий:

while (expression) {
   Statement(s) to be executed if expression is true
}

Пример

<html>
   <body>
      
      <script type = "text/javascript">
         <!--
            var count = 0;
            document.write("Starting Loop ");
         
            while (count < 10) {
               document.write("Current Count : " + count + "<br />");
               count++;
            }
         
            document.write("Loop stopped!");
         //-->
      </script>
      
      <p>Set the variable to different value and then try...</p>
   </body>
</html>

Цикл do…while

Цикл do…while подобен циклу while, за исключением того, что проверка условия происходит в конце цикла. Это означает, что цикл всегда будет выполняться хотя бы один раз, даже если условие false.

Синтаксис

Синтаксис цикла do-while в JavaScript следующий:

do {
   Statement(s) to be executed;
} while (expression);

Пример

Попробуйте следующий пример, чтобы узнать, как реализовать цикл do-while в JavaScript.

<html>
   <body>   
      <script type = "text/javascript">
         <!--
            var count = 0;
            
            document.write("Starting Loop" + "<br />");
            do {
               document.write("Current Count : " + count + "<br />");
               count++;
            }
            
            while (count < 5);
            document.write ("Loop stopped!");
         //-->
      </script>      
      <p>Set the variable to different value and then try...</p>
   </body>
</html>

Операторы цикла

Для цикла

Цикл for — это наиболее компактная форма цикла. Он включает в себя следующие три важные части —

  • Инициализация цикла, где мы инициализируем наш счетчик начальным значением. Оператор инициализации выполняется до начала цикла.
  • Тестовый оператор, который проверяет, верно ли заданное условие. Если условие истинно, то код, заданный внутри цикла, будет выполнен, иначе управление выйдет из цикла.
  • оператор итерации, в котором вы можете увеличить или уменьшить значение счетчика.

Вы можете поместить все три части в одну строку, разделив их точкой с запятой.

Синтаксис

Синтаксис цикла for для JavaScript выглядит следующим образом:

for (initialization; test condition; iteration statement) {
   Statement(s) to be executed if test condition is true
}

Пример

<html>
   <body>      
      <script type = "text/javascript">
         <!--
            var count;
            document.write("Starting Loop" + "<br />");
         
            for(count = 0; count < 10; count++) {
               document.write("Current Count : " + count );
               document.write("<br />");
            }         
            document.write("Loop stopped!");
         //-->
      </script>      
      <p>Set the variable to different value and then try...</p>
   </body>
</html>

Для… в цикле

Цикл for…in используется для перебора свойств объекта. Поскольку мы еще не обсуждали объекты, этот цикл может показаться вам неудобным. Но как только вы поймете, как объекты ведут себя в JavaScript, вы найдете этот цикл очень полезным.

Синтаксис

Синтаксис цикла «for..in»:

for (variablename in object) {
   statement or block to execute
}

На каждой итерации одно свойство из object назначается имя_переменной, и этот цикл продолжается до тех пор, пока не будут исчерпаны все свойства объекта.

Пример

<html>
   <body>      
      <script type = "text/javascript">
         <!--
            var aProperty;
            document.write("Navigator Object Properties<br /> ");        
            for (aProperty in navigator) {
               document.write(aProperty);
               document.write("<br />");
            }
            document.write ("Exiting from the loop!");
         //-->
      </script>      
      <p>Set the variable to different object and then try...</p>
   </body>
</html>

Операторы управления циклом

Заявление о перерыве

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

Пример

<html>
   <body>     
      <script type = "text/javascript">
         <!--
         var x = 1;
         document.write("Entering the loop<br /> ");
         
         while (x < 20) {
            if (x == 5) {
               break;   // breaks out of loop completely
            }
            x = x + 1;
            document.write( x + "<br />");
         }         
         document.write("Exiting the loop!<br /> ");
         //-->
      </script>
      
      <p>Set the variable to different value and then try...</p>
   </body>
</html>

Заявление о продолжении

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

Пример

<html>
   <body>      
      <script type = "text/javascript">
         <!--
            var x = 1;
            document.write("Entering the loop<br /> ");
         
            while (x < 10) {
               x = x + 1;
               
               if (x == 5) {
                  continue;   // skip rest of the loop body
               }
               document.write( x + "<br />");
            }         
            document.write("Exiting the loop!<br /> ");
         //-->
      </script>      
      <p>Set the variable to different value and then try...</p>
   </body>
</html>

Функция

Функция — это группа повторно используемого кода, которую можно вызывать в любом месте вашей программы. Это избавляет от необходимости писать один и тот же код снова и снова. Это помогает программистам в написании модульных кодов. Функции позволяют программисту разделить большую программу на несколько небольших и управляемых функций.

Прежде чем мы используем функцию, нам нужно определить ее. Самый распространенный способ определить функцию в JavaScript — использовать ключевое слово function, за которым следует уникальное имя функции, список параметров (который может быть пустым) и блок операторов, заключенный в фигурные скобки. .

Синтаксис

Основной синтаксис показан здесь.

<script type = "text/javascript">
   <!--
      function functionname(parameter-list) {
         statements
      }
   //-->
</script>

Пример

<script type = "text/javascript">
   <!--
      function sayHello() {
         alert("Hello there");
      }
   //-->
</script>

Вызов функции

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

Пример

<html>
   <head>   
      <script type = "text/javascript">
         function sayHello() {
            document.write ("Hello there!");
         }
      </script>
      
   </head>
   
   <body>
      <p>Click the following button to call the function</p>      
      <form>
         <input type = "button" onclick = "sayHello()" value = "Say Hello">
      </form>      
      <p>Use different text in write method and then try...</p>
   </body>
</html>

Параметры функции

До сих пор мы видели функции без параметров. Но есть возможность передавать разные параметры при вызове функции. Эти переданные параметры могут быть захвачены внутри функции, и над этими параметрами можно выполнять любые манипуляции. Функция может принимать несколько параметров, разделенных запятой.

Пример

<html>
   <head>   
      <script type = "text/javascript">
         function sayHello(name, age) {
            document.write (name + " is " + age + " years old.");
         }
      </script>      
   </head>
   
   <body>
      <p>Click the following button to call the function</p>      
      <form>
         <input type = "button" onclick = "sayHello('Zara', 7)" value = "Say Hello">
      </form>      
      <p>Use different parameters inside the function and then try...</p>
   </body>
</html>

Заявление о возврате

Функция JavaScript может иметь необязательный оператор return. Это необходимо, если вы хотите вернуть значение из функции. Этот оператор должен быть последним оператором в функции.

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

Пример

<html>
   <head>  
      <script type = "text/javascript">
         function concatenate(first, last) {
            var full;
            full = first + last;
            return full;
         }
         function secondFunction() {
            var result;
            result = concatenate('Zara', 'Ali');
            document.write (result );
         }
      </script>      
   </head>
   
   <body>
      <p>Click the following button to call the function</p>      
      <form>
         <input type = "button" onclick = "secondFunction()" value = "Call Function">
      </form>      
      <p>Use different parameters inside the function and then try...</p>  
  </body>
</html>

Что такое событие?

Взаимодействие JavaScript с HTML осуществляется посредством событий, которые происходят, когда пользователь или браузер манипулирует страницей.

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

Тип события onclick

Это наиболее часто используемый тип события, который возникает, когда пользователь щелкает левой кнопкой мыши. Вы можете разместить свою проверку, предупреждение и т. д. для этого типа события.

Пример

<html>
   <head>   
      <script type = "text/javascript">
         <!--
            function sayHello() {
               alert("Hello World")
            }
         //-->
      </script>      
   </head>
   
   <body>
      <p>Click the following button and see result</p>      
      <form>
         <input type = "button" onclick = "sayHello()" value = "Say Hello" />
      </form>      
   </body>
</html>

Стандартные события HTML 5

Offline, Onabort, onafterprint, onbeforeonload, onbeforeprint, onblur, oncanplay, oncanplaythrough, onchange, onclick, oncontextmenu, ondblclick, ondrag, ondragend, ondragenter, ondragleave, ondragover, ondragstart, ondrop, ondurationchange, onemptied, onended, onerror, onfocus, onformchange, onforminput, onhaschange, oninput, oninvalid, onkeydown, onkeypress, onkeyup, onload, onloadeddata, onloadedmetadata, onloadstart, onmessage, onmousedown, onmousemove, onmouseout, onmouseover, onmouseup, onmousewheel, onoffline, onoine, ononline, onpagehide, onpageshow, onpause, onplay, onplaying, onpopstate, onprogress, onratechange, onreadystatechange, onredo, onresize, onscroll, onseeked, onseeking, onselect, onstalled, onstorage, onsubmit, onsuspend, ontimeupdate, onundo, onunload, onvolumechange, onwaiting