接受後台傳過來的資料,取出最大值,但是的出來的結果卻不是想要的。
let max =0;
//arr 是後台傳過來的陣列
arr.
foreach
((num)
=>
console.
log(
"num:"
+ num +
" max:"
+ max)}}
)
arr: [「9」, 「26」, 「5」, 「4」, 「56」, 「10」, 「24」, 「52」, 「59」]
得出的最大值卻是:9
嘗試修改陣列值後發現,直接比較大小,比較的是每個數字的第乙個
因為上述陣列裡儲存的數字是字串型別,兩個字串比較,會比較ascii碼,所以會出現問題。
先將值轉成int型別,再進行比較parseint()
let max =0;
console.
log(arr)
arr.
foreach
((num)
=>
console.
log(
"num:"
+ num +
" max:"
+ max)}}
)
結束~ 比較兩個數字的大小
int max x x y x y 31 int a int b while a b system.out.println b x y 31不是把x y的符號位取出來了嗎?如果x y則x y 31就是0,否則是1 return a b abs a b 2 int nums return nums a...
不用if比較兩個數大小
一 問題 有兩個變數a,b,不用 if switch或者其它判斷語句,找出兩個數中間比較大的 二 解決方案 方法1 取平均值法 大的為 a b abs a b 2 小的為 a b abs a b 2 int fmax1 int a,int b 方法2 不使用abs ab時,b a 0,所以前面為a ...
比較兩個數的大小
一 問題 有兩個變數a,b 找出兩個數中間比較大的 二 解決方案 方法1 取平均值法 大的為 a b abs a b 2 小的為 a b abs a b 2 int fmax1 int a,int b 方法2 不使用abs ab時,b a 0,所以前面為a a b 後面為a b,那麼結果就是a in...