排錯小結 從資料型別的傳遞關係著手

2021-09-08 21:16:25 字數 639 閱讀 5332

今天排了2個錯,挺有意思,錯誤於微妙之間,廢話不多說,看**:

第乙個:

long a = 1,b = 1;

system.out.println(a == b);

我知道你現在肯定知道會說false,但是寫的時候難免一不下心犯錯了,在選擇資料庫對應的字段時候,總是不自覺的使用物件來替代基本型別,但往往因為資料基本型別在腦子根深蒂固,所以排錯不易發現。

一以上的錯誤型別基本最常見該發生在ifz條件判斷對值相等的判斷,所以保險起見,以後看到等於號==,就想一想等號兩邊的型別是基本型別還是物件。

第二個:

list list = new arraylist<>(10);

user user = list.get(0);

這是從資料庫對應查詢出來的乙個list

但是由於list.get是返回object型別的,所以型別的向下轉型,也就出現了修改為:

user user =(user) list.get(0);

之所以你平常不會用到向下轉型的list取元素,是因為你最開始add陣列的型別已知,而從資料庫返回的對應記錄陣列是通過object物件返回值的,原因是返回記錄的泛型更大化。

型別,永遠是語言不可避免的出錯點,排查時候,通過賦值語句,條件判斷值,方法返回值的關鍵處多看看

ajax傳遞的資料型別json傳遞

del goods click function ajax 因為ajax是要傳遞的json格式的,但是我們需要傳遞過去的是陣列,所以把整個陣列當成json的乙個key的數值傳遞過去,ids就是乙個key。如果只傳,那麼傳遞過去的key就是clear data。datatype json succes...

引數傳遞的資料型別

1.基本資料型別 public class passvalue public static void change int x 基本資料型別的引數傳遞不能改變這個變數的值,原因是方法中的形式引數相當於區域性變數 方法呼叫後自行釋放,不會影響到主程式的同名變數 2.引用變數的引數傳遞 引數傳遞引用變數...

資料型別的轉化小結

boolean number undefined number null number 小結 只要轉化字串除拼接外,都是看整體是不是乙個數字,是就轉化為數字後運算 string 強制將乙個其它型別資料轉化為字串型別 boolean 強制將乙個其他的資料型別轉化為乙個boolean型別 轉化字串的時候...