java - जावा # के बराबर में सी #


मैं एक्लिप्से में कोड तह के लिए क्षेत्रों का उपयोग करना चाहता हूं; जावा में यह कैसे किया जा सकता है?

सी # में एक उदाहरण उपयोग:

#region name
//code
#endregion


Answers


ऐसा कोई मानक समकक्ष नहीं है कुछ आईडीई - इंटेलिज, उदाहरण के लिए, या ग्रहण - इसमें शामिल कोड प्रकारों (कंस्ट्रक्शंस, आयात इत्यादि) के आधार पर गुना हो सकता है, लेकिन इसमें कुछ नहीं है #region जैसे




जेट मस्तिष्क आईडीईए में यह सुविधा है। आप इसके लिए चारों ओर से हॉटकी का उपयोग कर सकते हैं (ctrl + alt + t) यह सिर्फ आईडीईए सुविधा है

वहाँ क्षेत्र इस तरह दिखते हैं:

//region Description

Some code

//endregion



एंड्रॉइड स्टूडियो के साथ, यह प्रयास करें:

//region VARIABLES
private String _sMyVar1;
private String _sMyVar2;
//endregion

सावधान: // क्षेत्र के बाद कोई रिक्त रेखा नहीं ...

और आपको मिलेगा:




भाषा में समतुल्य नहीं है ... आईडीई के आधार पर ...

उदाहरण के लिए नेटबीन में:

नेटबैंस / क्रिएटर इस वाक्य रचना का समर्थन करता है:

// <editor-fold defaultstate="collapsed" desc="Your Fold Comment">
...
// </editor-fold>

http://forums.java.net/jive/thread.jspa?threadID=1311







कॉफी स्क्रिप्ट कोड तह प्लगइन का उपयोग करके ग्रहण करने के लिए कस्टम कोड तह सुविधा को जोड़ा जा सकता है।

इस ग्रहण लुना और जूनो के साथ काम करने के लिए परीक्षण किया गया है ये कदम हैं

  1. यहां से प्लगइन डाउनलोड करें

  2. संग्रह की सामग्री निकालें

  3. प्रतिलिपि एन्क्रिप्शन इंस्टालेशन निर्देशिका के अंदर समान नामित फ़ोल्डर में प्लगइन और फीचर्स फ़ोल्डर की सामग्री कॉपी करें
  4. ग्रहण को पुनरारंभ करें
  5. नेविगेट Window >Preferences >Java >Editor >Folding >Select folding to use: Coffee Bytes Java >General tab >Tick checkboxes in front of User Defined Fold

  6. दिखाए गए अनुसार नया क्षेत्र बनाएं:

  7. यह प्रयास करें कि यदि विशिष्ट शुरुआत और समापन आइडेंटिफ़ार्स के साथ उपसर्ग वाले टिप्पणियों के साथ तह काम करता है

आप संग्रह को डाउनलोड कर सकते हैं और इस ब्लॉग पर भी कदम पा सकते हैं।




यह भाषा सुविधा से एक IDE सुविधा का अधिक है। नेटबीन्स आपको निम्नलिखित परिभाषाओं का उपयोग करते हुए अपनी तह परिभाषाओं को परिभाषित करने की अनुमति देता है:

// <editor-fold defaultstate="collapsed" desc="user-description">
  ...any code...
// </editor-fold>

जैसा कि लेख में बताया गया है, यह अन्य संपादकों द्वारा भी समर्थित हो सकता है, लेकिन कोई गारंटी नहीं है




Android Studio (या IntelliJ IDEA ) में सबसे तेज़ तरीका

  1. highlight the code आप इसे घेरना चाहते हैं
  2. ctrl + alt + t दबाएं
  3. प्रेस c ==> फिर विवरण दर्ज करें
  4. का आनंद लें



जो सबसे अधिक पोस्टिंग के विपरीत हैं, यह एक IDE बात नहीं है यह एक भाषा की बात है #region एक सी # बयान है




सबसे अच्छा तरीका

//region DESCRIPTION_REGION
int x = 22;
// Comments
String s = "SomeString";
//endregion;

युक्ति: ""; "अंतराल" के अंत में




यदि कोई दिलचस्पी है, तो ग्रहण में आप अपने सभी विधियों को एक बार में पलट कर सकते हैं, बस ठीक क्लिक करें जब आप आमतौर पर एक ब्रेक प्वाइंट जोड़ते हैं, तो 'तह' '' सभी को संक्षिप्त करें 'पर क्लिक करें। यह पता है कि यह सवाल का उत्तर नहीं है, लेकिन सिर्फ त्वरित कोड के तह के लिए एक विकल्प प्रदान कर रहा है।




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

 //region [Description]
 int a;
 int b;
 int c;
//endregion

शॉर्टकट नीचे की तरह है:

1- कोड का चयन करें

2- प्रेस ctrl + alt + t

3- प्रेस c और अपना विवरण लिखें




#region

// code

#endregion

वास्तव में केवल आपको आईडीई में कोई लाभ प्राप्त होता है जावा के साथ, आईडीई में कोई मानक नहीं है, इसलिए वास्तव में #region लिए कोई मानक समानांतर नहीं है




मुझे आमतौर पर टिप्पणी की गई कोड के लिए इसकी ज़रूरत है, इसलिए मैं इसके शुरू और अंत में घुंघराले ब्रैकेट का उपयोग करता हूं।

{
// Code
// Code
// Code
// Code
}

यह कोड स्निपेट्स के लिए इस्तेमाल किया जा सकता है लेकिन कुछ कोड में समस्याएं पैदा कर सकती हैं क्योंकि यह चर का दायरा बदलता है




असल में जोहान, # इंगित करता है कि यह एक प्रीप्रोसेसर निर्देश है, जिसका मूल रूप से यह आईडीई को बताता है कि क्या करना है।

अपने कोड में #region और #endregion का उपयोग करने के मामले में, अंतिम कोड में यह कोई फर्क नहीं पड़ता कि वह वहां है या नहीं। क्या आप इसे वास्तव में एक भाषा तत्व कहते हैं अगर इसका उपयोग करना कुछ भी बदलता है?

इसके अलावा, जावा में प्रीप्रोसेसर निर्देश नहीं है, जिसका मतलब है कि कोड तह का विकल्प प्रति-आईडी आधार पर परिभाषित किया गया है, उदाहरण के लिए नेटबीन में // <code-fold> statement




AndroidStudio क्षेत्र
क्षेत्र बनाएं

सबसे पहले , मेनू के Surround With लिए (और यदि आवश्यक हो तो शॉर्ट कट को परिभाषित करें) खोजें

फिर , कोड का चयन करें, Ctrl+Alt+Semicolon region..endregion... - क्षेत्र का चयन करें region..endregion...

क्षेत्र पर जाएं

सबसे पहले, Custom Folding शॉर्ट कट खोजें
दूसरा, अपने कोड में कहीं से, Ctrl+All+Period('>' on keyboard)




मैक और एंड्रॉइड स्टूडियो पर इस अनुक्रम का पालन करें:

  1. स्रोत कोड को फोल्ड करने के लिए हाइलाइट करें
  2. Alt + Command + t दबाएं
  3. <editor-fold>

इसके अलावा आप अन्य विकल्प चुन सकते हैं:




ग्रहण में आप चर क्षेत्र ब्लॉक लपेटकर कोष्ठकों को ढंका सकते हैं। निकटतम ऐसा कुछ करना है:

public class counter_class 
{ 

    { // Region

        int variable = 0;

    }
}



बस कॉफी-बाइट्स प्लगइन (एक्लिप्स) सक्षम करें और सक्षम करें




एक ही हासिल करने के लिए कुछ विकल्प हैं, नीचे दिए गए अंकों का पालन करें।

1) खुला मैक्रो एक्सप्लोरर:

2) नया मैक्रो बनाएं:

3) इसे "आउटलाइन रेगिंस" नाम दें (या जो भी आप चाहते हैं)

4) "बाह्यरेखा क्षेत्रों" पर क्लिक करें (मैक्रो एक्सप्लोरर पर दिखाना) "संपादित करें" विकल्प चुनें और उसमें निम्न VB कोड पेस्ट करें:

    Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports EnvDTE90a
Imports EnvDTE100
Imports System.Diagnostics
Imports System.Collections

Public Module OutlineRegions

    Sub OutlineRegions()
        Dim selection As EnvDTE.TextSelection = DTE.ActiveDocument.Selection

        Const REGION_START As String = "//#region"
        Const REGION_END As String = "//#endregion"

        selection.SelectAll()
        Dim text As String = selection.Text
        selection.StartOfDocument(True)

        Dim startIndex As Integer
        Dim endIndex As Integer
        Dim lastIndex As Integer = 0
        Dim startRegions As Stack = New Stack()

        Do
            startIndex = text.IndexOf(REGION_START, lastIndex)
            endIndex = text.IndexOf(REGION_END, lastIndex)

            If startIndex = -1 AndAlso endIndex = -1 Then
                Exit Do
            End If

            If startIndex <> -1 AndAlso startIndex < endIndex Then
                startRegions.Push(startIndex)
                lastIndex = startIndex + 1
            Else
                ' Outline region ...
                selection.MoveToLineAndOffset(CalcLineNumber(text, CInt(startRegions.Pop())), 1)
                selection.MoveToLineAndOffset(CalcLineNumber(text, endIndex) + 1, 1, True)
                selection.OutlineSection()

                lastIndex = endIndex + 1
            End If
        Loop

        selection.StartOfDocument()
    End Sub

    Private Function CalcLineNumber(ByVal text As String, ByVal index As Integer)
        Dim lineNumber As Integer = 1
        Dim i As Integer = 0

        While i < index
            If text.Chars(i) = vbCr Then
                lineNumber += 1
                i += 1
            End If

            i += 1
        End While

        Return lineNumber
    End Function
End Module

5) मैक्रो को बचाने और संपादक को बंद करें।

6) अब चलो मैक्रो को शॉर्टकट असाइन करें। टूल-> विकल्प-> पर्यावरण-> कुंजीपटल पर जाएं और "मैक्रो युक्त" टेक्स्टबॉक्स में टाइप करें (प्रकार: मेक्रो को टेक्स्ट बॉक्स में, यह मैक्रोज़ का सुझाव देगा, अपना एक चुनें।)

7) अब "प्रेस शॉर्टकट कुंजियों" के अंतर्गत टेक्स्टबॉक्स में आप वांछित शॉर्टकट दर्ज कर सकते हैं। मैं Ctrl + M + N का उपयोग करता हूँ

उपयोग:

return
{
//Properties
//#region
Name:null,
Address:null
//#endregion
}

8) सहेजे गए शॉर्टकट कुंजी को दबाएं

नीचे परिणाम देखें: