Aritmetik İfade

Diğer Saat Kadranı'nda da kullanabileceğiniz aritmetik fonksiyonlar ve işlemler koleksiyonu Biçim öğeleri, gerçek zamanlı özellik değerlerini ve jiroskopu çözümlemek için kullanılır hoşuma gidiyor.

Wear OS 4'te kullanıma sunuldu.

Örnek

Bir değeri iki yönde 5 dereceye kadar döndürmeye ilişkin örnek ifade, Wear OS cihazın ivme ölçerinin $ x $ değerine göre:

(5/90)*clamp([ACCELEROMETER_ANGLE_X],0,90) + (-5/90)*clamp([ACCELEROMETER_ANGLE_X],-90,0)

Bu, aşağıdaki matematiksel ifadeye eşdeğerdir; burada $($) \theta_x $, $ x $-yönünde ivme ölçer açısını gösterir:

$$ \frac{5}{90} * max(min(\theta_x, 90), -90) $$

Fonksiyonlar

Saat Kadranı Formatı, aşağıdaki dize değerlerini işlev olarak tanır:

İşlev Açıklama Dönüş türü Kullanılabilirlik
round() Girdi değerini bir kayan nokta değerine dönüştürür ve ardından round() matematik işlemi. Tam sayı Sürüm 1
floor() Standart floor() matematik işlemini gerçekleştirir. Havada Süzülen Sürüm 1
ceil() Standart ceil() matematik işlemini gerçekleştirir. Havada Süzülen Sürüm 1
fract() Girdi değerinin kesirli kısmını döndürür; proje yönetiminin ondalık virgülünün sağında görünen kayan nokta değeridir. Havada Süzülen Sürüm 1
sin() Standart sin() trigonometrik işlemini gerçekleştirir. Havada Süzülen Sürüm 1
cos() Standart cos() trigonometrik işlemini gerçekleştirir. Havada Süzülen Sürüm 1
tan() Standart tan() trigonometrik işlemini gerçekleştirir. Havada Süzülen Sürüm 1
asin() Standart asin() trigonometrik işlemini gerçekleştirir. Döndürülen değer her zaman $ [-\frac{\pi}{2}, \frac{\pi}{2}] $ aralığındadır. Havada Süzülen Sürüm 1
acos() Standart acos() trigonometrik işlemini gerçekleştirir. Döndürülen değer her zaman $ [0,0, \pi] $ aralığında olur. Havada Süzülen Sürüm 1
atan() Standart atan() trigonometrik işlemini gerçekleştirir. Döndürülen değer her zaman $ [-\frac{\pi}{2}, \frac{\pi}{2}] $ aralığındadır. Havada Süzülen Sürüm 1
abs() Girdi değerini bir kayan nokta değerine dönüştürür ve ardından abs() matematik işlemi. Havada Süzülen Sürüm 1
clamp(,,) Giriş değerlerini kayan nokta değerlerine dönüştürür ve ardından clamp() Jetpack işlemini aşağıdaki gibi tanımlanan aralıktaki ilk değere sığdır: ikinci ve üçüncü değerlere ulaşabilirsiniz. Havada Süzülen Sürüm 1
rand(,) Aşağıdaki koşulları karşılayan rastgele bir kayan nokta değeri oluşturur ile aynı anda:
  • İlk değerden büyük veya ilk değere eşit.
  • İkinci değerden küçük veya ona eşit.
ziyaret edin. İlk değerin, ikinci değerden küçük veya ona eşit olduğu varsayılır.
Havada Süzülen Sürüm 1
log() Standart tabandaki $ e $ log() matematik işlemini gerçekleştirir. Havada Süzülen Sürüm 1
log2() 2 tabanındaki bir logaritmayı simüle eder. Bu değer, tabanda 10'a bölünerek hesaplanır log()) bulun. Havada Süzülen Sürüm 1
log10() Standart 10 tabanlı log() matematik işlemini gerçekleştirir. Havada Süzülen Sürüm 1
sqrt() Standart sqrt() matematik işlemini gerçekleştirir. Havada Süzülen Sürüm 1
cbrt() Standart cbrt() matematik işlemini gerçekleştirir. Havada Süzülen Sürüm 1
exp() Standart exp() matematik işlemini gerçekleştirir. Havada Süzülen Sürüm 1
expm1() Girdi değeri şu şekildeyse expm1() matematik işlemini doğrudan çağırır 1 ABD doları. Diğer tüm giriş değerleri için, standart exp() matematik işlemiyle 1 çıkarılarak hesaplanır. Havada Süzülen Sürüm 1
deg() Standart toDegrees() matematik işlemini gerçekleştirir. $ \frac{\pi}{2} $ 90 derece olarak, $ \pi $ ise 180 olarak tanımlanır derece. Havada Süzülen Sürüm 1
rad() Standart toRadians() matematik işlemini gerçekleştirir. 90 derece $ \frac{\pi}{2} $ olarak, 180 derece ise $ \pi $ olarak tanımlanır. Havada Süzülen Sürüm 1
pow(,) Standart pow() matematik işlemini gerçekleştirir. Çıkış değeri her zaman kayan noktalı bir sayıdır. Havada Süzülen Sürüm 1
numberFormat(,) İlk değerdeki sayı biçimini ikinci değere uygular. İlk değer aşağıdaki karakterleri içerebilir:
  • # -- sayısal bir basamağı temsil eder.
  • , -- büyük sayılarda virgül ayırıcısını temsil eder.
  • . -- ondalık sayıyı temsil eder.
Dize Sürüm 1
icuText()

Giriş tarih biçimi dizesini beklenen yerel ayar biçimiyle eşleşen bir kalıpa dönüştürür. Üst PartText öğesi bir Localization öğesi içeriyorsa bu yerel ayarın biçimi kullanılır. Aksi halde, Wear OS cihazın mevcut yerel ayarı.

Örneğin, cihaz ABD'de kullanılıyorsa bir giriş değeri EE, MMM d, yyyy h:mm a değeri aşağıdaki çıkışı verir: Tue, Mar 14, 2023 1:59 PM

Dize Sürüm 1
icuText(,)

İlk bağımsız değişken olan giriş tarih biçimi dizesini, beklenen yerel ayar biçimiyle eşleşen bir kalıpa dönüştürür. İkinci bağımsız değişken, milisaniye cinsinden bir zaman damgası dizesidir.

Üst PartText öğesi bir Localization öğesi içeriyorsa bu yerel ayarın biçimi kullanılır. Aksi halde, Wear OS cihazın mevcut yerel ayarı.

Dize Sürüm 2
icuBestText()

Giriş tarih biçimi dizesini, kalıbı beklenen biçimle eşleşen geçerli saate dönüştürür. Üst PartText öğesi bir Localization öğesi içeriyorsa bu yerel ayarın biçimi kullanılır. Aksi halde, Wear OS cihazın mevcut yerel ayarı.

Örneğin, cihaz 14 Mart 2023 tarihinde ABD'de kullanılıyorsa 13:59'da yyyy MMM d EE a h:mm giriş değeri şu sonucu verir: çıkış: Tue, Mar 14, 2023, 1:59 PM

Dize Sürüm 1
icuBestText(,)

Giriş tarih biçimi dizesi adlı ilk bağımsız değişkeni, kalıbı beklenen biçimle eşleşen geçerli zamana dönüştürür. İkinci bağımsız değişken, milisaniye cinsinden bir zaman damgası dizesidir.

Üst PartText öğesi bir Localization öğesi içeriyorsa bu yerel ayarın biçimi kullanılır. Aksi halde, Wear OS cihazın mevcut yerel ayarı.

Dize Sürüm 2
subText(,,)

İlk değerden bir alt dizeyi çıkarır. İkinci değer, 0 tabanlı dizin, alt dizenin başlaması gereken ilk değere eklenir. Üçüncü değer, alt dizenin ilk değere ait 0 tabanlı dizini gösterir çıkarma işlemi durdurulmalıdır ("ikinci değerden üçüncü değer").

Örnekler:
  • subText("abc def", 2, 5) c d
  • subText("abc def", 2, 7) c def
Dize Sürüm 1
textLength()

Giriş dizesinin uzunluğunu hesaplar.

Örnekler:
  • textLength("") 0
  • textLength("abcdef") 6
Dize Sürüm 1

Operatörler

Saat Kadranı Formatı, aşağıdaki dize değerlerini operatör olarak tanır:

+
Birli artı veya birden fazla değerin eklenmesi. Hem tam sayıları hem de .
-
Birden fazla değerin birli eksi veya çıkarma işlemi. Hem tam sayıları hem de .
*
Birden fazla tam sayının veya kayan nokta değerinin çarpılması.
/

2 tam sayının veya kayan nokta değerlerinin bölünmesi.

2 tam sayının bölünmesi tam sayı olmayan bir değer oluşturuyorsa ondalık kısım korunduğundan emin olun. Örneğin, $ \frac{1}{2} = 0,5 TL.

Ayrıca, $ \frac{x}{0} $ ifadesi, 0 olarak değerlendirilir. Burada $ x $ herhangi bir tam sayıdır.

%

2 tam sayının veya kayan nokta değerlerinin modüler bölümü.

Her iki işlem gören de tam sayıysa sonuç, 2'nin bölünmesinden kalan değerler. Örneğin $ 19 \bmod 7 = 5 $.

En az bir işlenen, kayan nokta sayıysa sonuç kalanın kayan noktalı eşdeğeri; örneğin: 19,0 TL \bmod 7 = 5,0 TL.

~

Bit tabanlı "değil" operatörümüzü kullanabilirsiniz. Birkaç örnek:

  • ~1 ABD doları - 2 ABD doları
  • ~0 ABD doları - 1 ABD doları
!

Mantıksal "not" (değil) işlecini kullanın. Birkaç örnek:

  • !2 $ için false
  • !!0 ABD doları: true
|

Bit tabanlı "veya" operatörümüzü kullanabilirsiniz. 2'den fazla giriş değerini destekliyor. Birkaç örnek:

  • 1 TL | 0 = 1 TL
  • 1 TL | 2 | 4 = 7 TL
||
Mantıksal "veya" operatörünü kullanın.
&
İki yönlü "ve" operatörümüzü kullanabilirsiniz. Tam olarak 2 giriş değerini destekler.
&&
Mantıksal "ve" operatörünü kullanın.
(
Parantez açın. Standart işlem sırasını değiştirmek için kullanılır; burada çarpma ve bölme genelde toplama işlemine göre önceliklidir ve çıkarmanız gerekir.
)
Kapalı parantez. Standart işlem sırasını değiştirmek için kullanılır; burada çarpma ve bölme genelde toplama işlemine göre önceliklidir ve çıkarmanız gerekir.
<
"Küçüktür" karşılaştırma operatörü. Tam sayı değeri kayan nokta eşdeğeriyse sonuç false olur.
<=
"Küçüktür veya eşittir" karşılaştırma operatörü. Tam sayıları karşılaştırırken değerine eşitse, sonuç true olur.
>
"Büyüktür" karşılaştırma operatörü. Tam sayı değeri kayan nokta eşdeğeri ise false olur.
>=
"Büyük veya eşittir" karşılaştırma operatörü. Tam sayıları karşılaştırırken değerine eşitse, sonuç true olur.
? ve :

Üçlü işlemler için destek sağlar. Genel biçim aşağıdaki gibidir:

condition ? value_if_true : value_if_false

Parantez kullanarak iç içe yerleştirilmiş üçlü işlemleri destekler.

,

1'den fazla bağımsız değişken alan işlevlerdeki değerleri ayırır.

"

Bir değerin başına ve sonuna yerleştirildiğinde, Pixel Watch'un Yüz Biçimi, değeri bir dize olarak yorumlamalıdır.

==

Eşitlik için karşılaştırma yapın. Bir tam sayı değerini kayan noktasıyla karşılaştırırken true eşdeğerdir.

!=

Eşitsizlik için karşılaştırma yapın. Tam sayı değeri kayan nokta eşdeğeriyse sonuç false olur.

ziyaret edin.
'nı inceleyin. ziyaret edin.