使用 FLEX-AS3 實作 JAVA 數值過濾器
一點都不受歡迎的使用 FLEX 實作 JAVA TQC 考題又來了,這次要做的是如何判斷使用者輸入的資料是否為數字,這次算是非常簡單的議題呢,不過想當初剛學 FLEX 的時候也是找好久就不是知道怎麼把使用者輸入的字串轉為數值型態。
其實要將字串轉為數值只要使用 parseInt 這個函數就可以了,並且這個函數會回傳一個 Boolean 值,就可以判斷字串是否為數值囉,再將數字加總即可解答,這題算是最基礎型的了。
JVD06FLEX.mxml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | <?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" fontSize="16">
<mx:Script>
<![CDATA[
private function clickHandler():void{
//將字串切割成為陣列
var answer:Array;
answer = this.textInput.text.split(" ");
//數值總和,數值個數,非數值個數
var numberSum:int = 0;
var numbers:int = 0;
var unnumbers:int = 0;
//檢查每個切割完的字串
for(var i:int=0;i<answer.length;i++){
//檢查字串是否可以轉換成數值
if(parseInt(answer[i])){
trace(true);
numberSum += parseInt(answer[i]);
numbers += 1;
}else{
trace(false);
unnumbers += 1;
}
}
var resultAnswer:String = "";
resultAnswer += "輸入字串的個數為 : " + answer.length + "\n";
resultAnswer += "輸入數值之總和為 : " + numberSum + "\n";
resultAnswer += "非數值的個數為 : " + unnumbers + "\n";
resultAnswer += "純數值的個數為 : " + numbers + "\n";
this.resultArea.text = resultAnswer;
}
]]>
</mx:Script>
<mx:Label text="請輸入字串與數字組合,並使用空白隔開"/>
<mx:TextInput id="textInput" width="400"/>
<mx:Button label="執行" click="clickHandler()"/>
<mx:TextArea id="resultArea" width="400" height="150"/>
</mx:Application> |
Random Posts
Loading…
相關文章 :












>只要使用 parseInt 這個函數就可以了,並且這個函數會回傳一個 Boolean 值
不對吧!AS3 文件上是這樣喔
public function parseInt(str:String, radix:uint = 0):Number
isNaN 才是回傳 Boolean 值
public function isNaN(num:Number):Boolean
Ticore’s Blog
http://ticore.blogspot.com
原來是這樣~
因為用的時候沒有去查 API 所以就直接使用了
原來是先回傳 NUM 因為是 ISNAN 所以回傳 FALSE
多謝指教~~
簡單的東西也有大學問~