快速入门
根据官方教程新建一个项目:构建第一个ArkTS应用(Stage模型)
ArkTS基本语法
数据类型
- 按以下方式,在项目
src/main/ets/pages
目录下,新建一个dataType.ets
文件,内容如下:
@Entry
@Component
struct DataType {
@State message: string = 'hello world';
build() {
Column() {
Button('数字类型').onClick(()=>{
let n1: number = 10
let n2: number = 43.5
let n3 = n1 + n2
console.log('ken', n3)
// 进制表示
// 二进制,八进制,十六进制
let b1: number = 0o12 // 八进制 15
let b2: number = 0x17 // 十六进制 23
let b3: number = 0b1111 // 二进制 15
console.log('ken', b1, b2, b3)
let bFlag: boolean = true
let bFlag2: boolean = false
let bFlag3: boolean = false
console.log('ken', bFlag, bFlag2, bFlag3)
})
Button('字符串类型').onClick(()=>{
// 字符串类型,字符的数组
let s1: string = 'hello, this is demo'
let s2: string = 'hello, this is demo'
let n: number = 100
let s3: string = 'hello, this price is ${n} \t s1'
console.log('ken', s3)
})
Button('枚举类型').onClick(()=>{
// 枚举类型及其取值
let you: Man = Man.GoodMan
console.log('ken', you==0)
console.log('ken', you===0)
})
Button('联合类型').onClick(()=>{
// 一个变量可以定义为多种类型的组合
let score: string | number | null = 'A'
})
Button('数组类型').onClick(()=>{
// 静态初始化
let arr: string [] = ['1', '2', '12', '22']
// new初始化
let arr2: number [] = new Array(10)
// 下标
console.log('ken', arr[3])
// 支持动态扩容
arr2[100] = 100
console.log('ken', arr2.length)
})
}
.height('100%')
.width('100%')
}
}
enum Man {
GoodMan,
BadMan,
SexMan
}
- 注意,每个需要运行交互的文件,需要改动的地方有两个,如下:
src/main/ets/entryability/EntryAbility.ets
文件中windowStage.loadContent('pages/dataType'
要改成对应要运行的界面src/main/resources/base/profile/main_pages.json
中添加新建的文件"pages/dataType"
(如果是按照上图方式新建Page,会自动被添加)
运算符\分支&循环
import {
beforeItSpecified } from '@ohos/hypium';
@Entry
@Component
struct SignPage {
@State message: string = 'Hello World';
build() {
Column() {
Button('运算符').onClick(()=>{
// 赋值运算符 =, +=, -=, *=, /=, %=
let a = 10
let b = 20
a += b
console.log('ken', a, b)
// 算术运算符 +, -, *, /, %, ++, --
// 关系运算符 >, <, ==, >=, <=, !=
// 逻辑运算符 &&, ||, !
// 给定年份,判断是否是闰年,能被4但是不能被100或能被400整除的
let year = 2000
if ((year %4 == 0 && year % 100 != 0) || year % 400 == 0) {
console.log('ken', year + '是闰年')
} else {
console.log('ken', year + '是平年')
}
// 位运算符
// 三元运算符
})
Button('成绩等级').onClick(()=>{
let score = 90
if (score >= 90) {
console.log('ken', '优秀');
} else if (score >=80) {
console.log('ken', '良好');
} else {
console.log('ken', '还需加油');