2009-09-08 7 views
6

मैं खोज नहीं कर सकता | Google में यदि आपको इसे सॉफ़्टवेयर स्रोत कोड में मिला है जिसे आप समझाने की कोशिश कर रहे हैं, तो आपको नहीं पता था कि यह क्या करता है और आप अन्य लोगों से मदद के लिए नहीं पूछ सकते थे, आप यह कैसे पता लगाएंगे कि यह क्या करता है?"|" क्या करता है "int शैली = SWT.APPLICATION_MODAL | SWT.OK;" करें (और इसे कैसे Google करें)?

+0

आप इसे गूगल नहीं कर सकते, लेकिन आप JLS सूचकांक में यह पता लगाने के लिए सक्षम होना चाहिए। –

+0

देख http://stackoverflow.com/questions/47981 –

+0

@sheepsimulator: जब वे पूरी तरह से सवाल से संबंधित नहीं हैं क्यों, C और C++ टैग जोड़ने? यदि आप सवाल को टक्कर देना चाहते हैं, तो कम से कम सभ्य टैग का उपयोग करें। –

उत्तर

30

इस मामले में पाइप ऑपरेटर का अर्थ है "मेरे पॉपअप बॉक्स के लिए विकल्प/झंडे दोनों के रूप में SWT.APPLICATION_MODAL और SWT.OK दोनों का उपयोग करें।" यह बिटफील्ड कॉन्फ़िगरेशन आइडेंटिफायर, एएसपी के साथ एक बहुत ही सामान्य रूप से इस्तेमाल किया जाने वाला मुहावरे है। एसडब्ल्यूटी या Win32 जैसे विंडोिंग सिस्टम में।

यह कैसे काम करता

पाइप (|) ऑपरेटर बिटवाइज़ OR ऑपरेटर, वह यह है कि है, यह दो द्विआधारी पूर्णांक मूल्यों का एक या आपरेशन गणना करता है।

... 
SWT.OK = 1,     // 00000001 in binary 
SWT.ABORT_RETRY_IGNORE = 2, // 00000010 in binary 
SWT.OK_CANCEL = 4;   // 00000100 in binary 
... 
SWT.APPLICATION_MODAL = 32; // 00100000 in binary 
... (and so on...) 

जब आप बिटवाइज़ या दो (या अधिक) इन नंबरों को एक साथ की, अलग-अलग बिट्स में से प्रत्येक के लिए निर्धारित किया जाएगा: आप की जाँच हैं जहां APPLICATION_MODAL और ठीक परिभाषित कर रहे हैं, तो आप वे कुछ इस तरह कर रहे हैं मिल जाएगा विकल्प:

int style = SWT.OK | SWT.APPLICATION_MODAL = 00000001 | 00100000 = 00100001 

विंडोइंग टूलकिट शैली व्याख्या करने के लिए बताने के लिए एक बिटवाइज़ करके और इस तरह वास्तव में क्या आप (एक पॉपअप बॉक्स मॉडल है और एक ठीक बटन है) चाहता था सक्षम हो जाएगा हो जाता है कि:

... 
if(style & SWT.OK) 
{ 
    // we want an OK box 
} 
if(style & SWT.ABORT_RETRY_IGNORE) 
{ 
    // we want an Abort/Retry/Ignore box 
} 
if(style & SWT.OK_CANCEL) 
{ 
    // we want an OK/Cancel box 
} 
... 
if(style & SWT.APPLICATION_MODAL) 
{ 
    // We want a modal box 
} 
... 
मेरी विनम्र राय में

किंडा चालाक। यह आपको एक एकल चर में एकाधिक कॉन्फ़िगरेशन विकल्पों का चयन/प्रतिनिधित्व करने की अनुमति देता है। यह चाल विकल्पों की पूर्णांक परिभाषाओं में है, और यह सुनिश्चित करना है कि वे केवल 2 की शक्तियां हैं।

+0

बहुत विस्तृत उत्तर। +1 – MitMaro

+0

तुम भी अधिक जानकारी के लिए इस उत्तर की तुलना करना चाहते हो सकता है: http://stackoverflow.com/questions/276706/what-are-bitwise-operators/276771#276771 –

+1

इस सी और C++ बहुत आम है, लेकिन मैं 'm उत्सुक है कि क्या यह बूलियन झंडे का एक सेट के रूप में एक पूर्णांक उपयोग करने के लिए जावा में मुहावरेदार है के रूप में (कोई है जो बहुत ज्यादा नहीं जावा किया है के रूप में)? – caf

1

| ओआर ऑपरेटर है। उन दो मानों में शायद झंडे हैं जो 1 बिट सेट के साथ स्याही हैं, और परिणामी मान यह है कि किस शैली के मान का उपयोग करना है।

0

Bitwise OR

ज्यादातर चीजों के साथ, सीखने की वक्र का थोड़ा सा हिस्सा है। अगर मैं एक नई भाषा सीख रहा था, तो मुझे लगता है कि | एक ऑपरेटर था, और 'जावा ऑपरेटर' की खोज करेगा।

2

यह bitwise OR है, यह आपके लिए एक प्रकार के रूप में एसडब्ल्यूटी घटक को कई झंडे पास करने के लिए एक तरीका प्रदान करता है, बजाय सेटर विधियों के भार के साथ ओवरलोड करने के बजाय।

आपके द्वारा सूचीबद्ध दो गुणों से संकेत मिलता है कि आपके पास एक संवाद या अन्य विंडो है जिसे मूल रूप से पैरेंट खोल पर प्रदर्शित किया जाना चाहिए, और ठीक बटन का उपयोग करें। उदाहरण के लिए आप इसे ठीक से और रद्द करें बटन को प्रदर्शित करने के लिए SWT.CANCEL के साथ जोड़ सकते हैं

11

यह जानने के बारे में आपके प्रश्न के उत्तर में, मैं सबसे पहले खुद को कारण बताता हूं कि यह प्रतीक या ऑपरेटर था या नहीं। वह अकेले मुझे यह पता लगाने में मदद करता है कि Google में क्या खोजना है। उपयोग किए जा रहे चर के प्रकार भी मुझे एक सुराग देते हैं - यह एक ऑपरेटर है जो int प्रकारों पर काम कर रहा है।

उम्मीद है कि मदद करता है। A | B

+0

धन्यवाद देखते हैं !!! –

+0

मुझे यह बताने के लिए धन्यवाद कि आप इसकी सराहना करते हैं! ऐसा लगता है कि बहुत से लोग पोस्ट करने के लिए जल्दी हैं क्योंकि वे जवाब देने वाले पहले व्यक्ति बनना चाहते हैं और तेजी से प्रतिनिधि अंक प्राप्त करना चाहते हैं ... ओह ठीक है। – weiji

0

एक खोज इंजन है कि यह संभाल कर सकते हैं का प्रयोग करें।इसके बजाय, मैं the Wikipedia page को देखकर शुरू चाहते हैं, और के लिए वहाँ पर खोज "|" है, जो पर है:

और उस पृष्ठ है क्या है और इसका उपयोग कैसे करें इसके बारे में एक बहुत अच्छा अवलोकन।

+0

या एक खोज इंजन जो प्रश्न का उत्तर नहीं देता है। ओपी जानना चाहता था कि * जावा * में इसका क्या अर्थ है। सामान्य रूप से गणित में नहीं। – jalf

+2

@jalf, आदमी को आराम करो। – rodrigoap

2

दुर्भाग्य से, Google प्रतीकों पर घटिया है:

संबंधित मुद्दे