Введение
Kid Script — это основанный на JVM доступный китайский язык сценариев, который также может быть расширен для поддержки сторонних языков (в демо есть пример расширения японского языка).
Версия v0.7.26
Среда выполнения JDK 1.8
Примеры сценариев
переменная1 = 1;
переменная2 = переменная1 + 3;
переменная3 = «Результат:» + переменная2; // комментарий
вывод переменная3;
класс Животное {
количество ног = 0;
функция вывод количества ног() {
вернуть this.количество ног;
}
}
кошка1 = создать Животное();
кошка1.количество ног = 4;
вывод «У кошки всего» + кошка1.вывод количества ног() + «ног!»;
импорт java.lang.System;
импорт java.util.ArrayList;
переменная список1 = создать ArrayList();
список1.add("1");
вывод список1.size();
System.out.println(список1.size());
класс класс1 {
функция тест() {
печать "класс1-->ccccc";
}
}
переменная объект1 = новый класс1();
объект1.тест();
Тестирование производительности В каталоге demo/perf есть три различных тестовых примера, которые в основном выполняют 100 миллионов операций сложения. На процессоре i7 восьмого поколения режим DV выполняется примерно за 10 секунд, а режим BC — примерно за 0,8 секунды. Режим BC с определением типа значения выполняется примерно за 0,2 секунды. Подробнее см. в разделе demo.
Использование
Существует два способа выполнения скрипта: интерпретация (DV) и компиляция (BC), причём BC генерирует байт-код Java по умолчанию.
String code = "ks скрипт код";
KsRunner kr = new KsRunner(code, null);
kr.exec();
String code = "ks скрипт код";
KsRunner kr = new KsRunner(code, null, "сценарий", null);
kr.exec();
Поддерживаются следующие ключевые слова:
Ключевые слова (англ.) | Ключевые слова (кит.) | Описание | DV | BC |
---|---|---|---|---|
import | импорт | Импорт классов Java, не поддерживает * | √ | √ |
include | включить | Включить другие сценарии Ks | √ | √ |
var | переменная | Определение переменной | √ | √ |
if...else | если...иначе | Условное суждение | √ | √ |
while | цикл | Цикл while | √ | √ |
for | цикл | Цикл for | √ | √ |
break | прервать | Прервать текущий цикл | √ | √ |
continue | продолжить | Вернуться к началу цикла | √ | √ |
class | класс | Реализация класса и функциональности объекта | √ | √ |
return | возврат | Возврат и прерывание метода или программы | √ | √ |
switch...case | переключатель...замок | Условный выбор | √ | × |
function | функция | Реализация функциональности функции | √ | √ |
extends | расширить | Расширить новый класс (невозможно расширить классы Java) | √ | × |
closure | закрытие | Закрытие | √ | × |
try...catch...finally | попытка...отлов...завершение | Обработка исключений | √ | × |
Символ | Операция |
---|---|
/ | Деление |
% | Остаток от деления |
! | Логическое отрицание |
&& | Логическое И |
<= >= | Принадлежность диапазону |
Основные типы данных
Тип | Описание | DV режим | BC режим |
---|---|---|---|
int | Целое число | √ | √ |
long | Длинное целое число | √ | √ |
float | Число с плавающей точкой | √ | √ |
double | Двойная точность числа с плавающей точкой | √ | √ |
boolean | Булев тип | √ | √ |
Внешние переменные
DV режим: √ BC режим: √
Массивы
DV режим: √ BC режим: √
Тернарные выражения
DV режим: √ BC режим: √
Прочее
Знак | Описание | DV режим | BC режим |
---|---|---|---|
// | Однострочный комментарий | √ | √ |
/* */ | Многострочный комментарий | √ | √ |
" " | Строка в одинарных кавычках | √ | √ |
""" """ | Многострочная строка | √ | √ |
Примечание: часть текста не удалось перевести из-за отсутствия контекста.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )