Свойство length, методы toLowerCase, toUpperCase и concat() в ActionScript

На этом уроке мы рассмотрим два вопроса:

  1. Свойство length, методы toLowerCase, toUpperCase и concat() в ActionScript
  2. Дополнительная информация

Класс String в ActionScript 3 содержит единственное свойство length ActionScript, которое возвращает количество символов в строке. Например:

var bookTitle:String = "Собор Парижской богоматери";
var stringLength:Number = bookTitle.length;

Значение переменной stringLength будет равно 26. Заметьте, что посчитаны все символы в строке, включая пробелы.

Если Ваша строка написана строчными буквами, то конвертировать все символы в прописные (заглавные) можно с помощью метода toUpperCase(). Для того чтобы произвести обратную операцию используйте метод toLowerCase(). Если применить последний метод к переменной bookTitle, упомянутой выше

bookTitle.toLowerCase();

то возвращенное значение будет равно "собор парижской богоматери". Если же применить метод toUpperCase(),

bookTitle.toUpperCase();

то получим "СОБОР ПАРИЖСКОЙ БОГОМАТЕРИ".

В документации по Actionscript Вы обнаружите, что есть еще один метод, а именно toLocalLowerCase(). Вы его можете использовать абсолютно также как и toLowerCase(). Та же история и с toLocalUpperCase().

Один из самых часто используемых методов класса String – это concat(). Обычно конкатинация (соединение) строк осуществляется при помощи оператора " + ". То есть Ваши имя firstName и фамилия lastName могут быть соединены в единое целое fullName следующим образом

var fullName:String = firstName + " " + lastName;

Эту же самую инструкцию мы могли бы переписать по-другому

var fullName:String = firstName.concat(" ", lastName);

Оба примера взаимозаменяемы и между ними нет принципиальной разницы.

Управление строками

Создайте текстовое поле, например

var txtFile:TextField = new TextField();

Примените к данному текстовому полю свойства autoSize и левую выключку

txtFile.autoSize = TextFieldAutoSize.LEFT;

Установите нужные значения координат х и у и добавьте объект на сцену

txtFile.x = 150;
txtFile.y = 150;
addChild(txtFile);

Декларируйте переменную со значением равным какому-либо имени файла

var fileName:String = "MyPhoto.jpg";

Примените к этой переменной метод toLowerCase()

fileName.toLowerCase();

Используйте полученное значение по назначению

txtFile.text = fileName;

Нажмите Ctrl + Enter. Фильм начнет воспроизводиться.

Имя файла появится в текстовом поле, написанное строчными буквами.

Дополнительная информация

Для тех кто только начинает изучать программирование возможно будет непонятен слудующий момент: используя методы indexOf(), lastIndexOf() и charAt() для нахождения последнего символа, а затем сравнивая результат со значением свойства length Вы обнаруживаете, что результаты отличаются. Это происходит потому, что в программировании отсчет при индексировании элементов начинается с 0 (ноль), а не с 1 (единица). А это, в свою очередь, значит, что индекс последнего символа всегда будет меньше на 1 чем значение длины строки.

Пример:

var name:String = "Медведев";
var lastChar:Number = name.lastIndexOf("в");
var length:Number = name.length;
trace(lastChar); // возвращает 7
trace(length); // возвращает 8