以前在寫程式時常用到判斷第幾位狀態是1,或是0,當觸發乙個高低電平時,會產生不同的變化,此時就要快速的判斷某位是高電平還是低電平,也就是0或1。以前是用與操作判斷是否為1,如:
int a=242;
int b=(int)math.pow(2,index) & a;
if(b==0)
'index 位是0,否則是1
讓某位快速置1或0,自己寫的方法太笨,直接從網上搜了一段,感覺比較簡單和快速,留下為印!
///
/// 取整數的某一位
///
/// 要取某一位的整數
/// 要取的位置索引,自右至左為0-7
/// 返回某一位的值(0或者1)
public static int getintegersomebit(int _resource, int _mask)
///
/// 將整數的某位置為0或1
///
/// 整數的某位
/// 整數
/// 是否置1,ture表示置1,false表示置0
/// 返回修改過的值
public static int setintegersomebit(int _mask, int a, bool flag)
else
return a;
}除錯後,感覺簡單快速易懂。
如何判斷int型別溢位
int型別為4位元組共32位,所以乙個int能夠表示的資料的範圍為 231,231 1 表示為十進位制為 2147483648 2147483647 int資料型別出現異常的情況一般是在資料發生加法和乘法操作。對於加法運算 define int max 2147483647 int a int ma...
python判斷字串是否是中文(為某位大佬糾錯)
最近有判斷字串是否是中文的需求,就網上看見了一篇一萬多閱讀的帖子,發現其中存在一些邏輯錯誤。python判斷字串是否是中文 def is chinese word 修改過的 for ch in word if u4e00 ch or ch u9fff return false return true...
Mybatis關於int型別欄位的判斷
出現問題 有乙個欄位waternum 為int型別,在更新語句時判斷不為null或空字串時,更新該欄位,問題在於,當waternum為0的時候,該字段不更新了 示例 waternum if 問題原因 mybatis在判斷int型別時,0認為是空字串,因為加了waternum 所以該判斷為false,...