我有一些麻煩處理數組和位運算符與陣列和位運算符的工作...基於ActionScript3
這就是這個問題:我有類型爲複選框的數組,這個數組中我有3個複選框,一個對於每個選項(pvrtc,dtc1,dtx15),然後我可以選擇:只有一個複選框爲真,或全部爲真。現在我想爲我的狀態使用按位運算符。
我是這麼認爲現在得到直到:
// thats my class with the possible states like consts
public class CompressionCombinations {
public static const selectedPvrtc:uint = 1<<0;
public static const selectedEtc1:uint = 1<<1;
public static const selectedDxt15:uint = 1<<2;
public static const selectedPvrtcEtc1Dxt15:uint = selectedPvrtc && selectedEtc1 &&
selectedDxt15;
// thats mean: selectedPvrtc = checkbox1 true, checkbox2 false, checkbox3 false.
//now my main class
//attributing my checkboxes into array
_combinationArray = new Array();
_combinationArray[0] = _checkBoxPvrtc;
_combinationArray[1] = _checkBoxEtc1;
_combinationArray[2] = _checkBoxDxt15;
// a function that do the maths
if((bin=uint(_combinationArray[0].selected + _combinationArray[1].selected +
_combinationArray[2].selected)) == CompressionCombinations.selectedPvrtc){
_argNativeProcess = new String("p");
_nativeProcess.setupAndLaunch(_inputNativeProcess, _outputNativeProcess,
_argNativeProcess, this);
_msgSuccessErrorTextField.text = "Converting...";
}
else{
trace("not working");
}
那這個問題,我不能把它應用的按位opperation ...不知道如何使用或構建一個函數來做到這一點。我知道怎麼做沒有按位運算符,但我想按位操作未來的新版本...
任何想法?如何解決這個問題的建議?
爲什麼使用位在所有跟蹤((UINT(真)+ UINT(真)+ UINT(假))> 1) – 2013-03-12 17:40:38
SRY,我不明白......那其作用是不正確的,我只是tryied做一些事情...我想比較3複選框的結果與我的常量...成本'公共靜態常量selectedPvrtc:uint = 1 << 0;'意味着checkboxes1 selected = true,其餘的爲false。 – RafaelFelisbino 2013-03-12 18:10:08
我想要做的是...... if(selectedPvrtc){做點什麼}; if(selectedEtc1){Do something}; if(selectedDxt15){Do something}' – RafaelFelisbino 2013-03-12 18:12:20