Java эквивалентно #region в С#

Я хочу использовать регионы для сворачивания кода в Eclipse; как это можно сделать на Java?

Пример использования в С#:

#region name
//code
#endregion

Ответ 1

Нет такого стандартного эквивалента. Некоторые IDE - Intellij, например, или Eclipse - могут складываться в зависимости от используемых типов кода (конструкторы, импорт и т.д.), Но нет ничего подобного #region.

Ответ 2

У Jet Brains IDEA есть эта функция. Вы можете использовать горячие клавиши для этого (ctrl + alt + T). Это просто функция IDEA.

Регионы выглядят так:

//region Description

Some code

//endregion

Ответ 3

С Android Studio попробуйте следующее:

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

Осторожно: нет пустой строки после//региона...

И вы получите:

Ответ 4

Нет эквивалента в языке... На основе IDE...

Например, в netbeans:

NetBeans/Creator поддерживает этот синтаксис:

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

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

Ответ 6

Пользовательская функция свертывания кода может быть добавлена к затмению с помощью плагина сворачивания кода CoffeeScript.

Это проверено для работы с затмением Луны и Юноны. Вот шаги

  1. Загрузите плагин отсюда

  2. Извлечь содержимое архива

  3. Скопируйте и вставьте содержимое папки с плагинами и функциями в одноименную папку в каталоге установки eclipse
  4. Перезапустите затмение
  5. Перейдите в " Window >Preferences >Java >Editor >Folding >Select folding to use: Coffee Bytes Java >General tab >Tick checkboxes in front of User Defined Fold

    enter image description here

  6. Создайте новый регион, как показано:

    enter image description here

  7. Перезапустите Затмение.

  8. Попробуйте, если сворачивание работает с комментариями с указанием начального и конечного идентификаторов

    enter image description here

    enter image description here

Вы можете скачать архив и найти шаги в этом блоге.

Ответ 7

Это скорее функция IDE, чем функция языка. Netbeans позволяет определять свои собственные определения складчатости, используя следующее определение:

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

Как отмечено в этой статье, это может быть поддержано и другими редакторами, но нет никаких гарантий.

Ответ 8

самый быстрый способ в Android Studio (или IntelliJ IDEA)

  • highlight the code вы хотите окружить его
  • нажмите ctrl + alt + t
  • нажмите c == > , затем введите описание
  • пользоваться

Ответ 9

AndroidStudio регион
Создать регион

Сначала найдите (и при необходимости определите короткий путь) меню Surround With enter image description here

Затем выберите код, нажмите Ctrl+Alt+Semicolon → выберите region..endregion...
enter image description here

Перейти в регион

Во-первых, найдите Custom Folding ярлык
enter image description here Во-вторых, в любом месте вашего кода нажмите Ctrl+Alt+Period('>' on keyboard) enter image description here

Ответ 10

Вопреки тому, что большинство из них публикует, это НЕ является средством IDE. Это язык. #region - это оператор С#.

Ответ 11

Лучший способ

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

Совет: Положите ";" в конце "endregion"

Ответ 12

Я перешел из С# в Java, и у меня была та же проблема, и лучшая и точная альтернатива для региона - что-то вроде ниже (работая в Android Studio, не знаю насчет intelliJ):

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

ярлык, как показано ниже:

1- выберите код

2- нажмите ctrl + alt + t

3- нажмите c и напишите свое описание

Ответ 13

Если кому-то интересно, в Eclipse вы можете свернуть все свои методы и т.д. за один раз, просто щелкнув правой кнопкой мыши, когда вы обычно вставляете точку останова, нажмите "Складывание" > "Свернуть все". Он знает, что это не ответ на вопрос, а просто альтернатива быстрому сворачиванию кода.

Ответ 14

#region

// code

#endregion

Действительно, вы получаете какую-либо пользу в среде IDE. В Java нет стандартного стандарта в среде IDE, поэтому на самом деле нет стандартной, параллельной #region.

Ответ 15

Мне обычно нужно это для прокомментированного кода, поэтому я использую фигурные скобки в начале и в конце этого.

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

Он может использоваться для фрагментов кода, но может создавать проблемы в некотором коде, поскольку он изменяет область действия переменной.

Ответ 16

На самом деле johann, # указывает, что это директива препроцессора, которая в основном означает, что она сообщает IDE, что делать.

В случае использования #region и #endregion в вашем коде это не имеет никакого значения в конечном коде, будь то там или нет. Вы действительно можете назвать его элементом языка, если его использование ничего не меняет?

Кроме того, java не имеет директив препроцессора, что означает, что опция сгибания кода определяется на основе per-ide, в netbeans, например, с помощью // < code-fold >

Ответ 17

В Mac и Android Studio выполните следующие действия:

  • Выделите исходный код для создания
  • Нажмите Alt + Command + t
  • Выберите <editor-fold>

Также вы можете выбрать другие параметры:

введите описание изображения здесь

Ответ 18

В Eclipse вы можете свернуть блок регистров переменной области скобок. Ближайшим является сделать что-то вроде этого:

public class counter_class 
{ 

    { // Region

        int variable = 0;

    }
}

Ответ 19

Просто включите и включите плагин Coffee-Bytes (Eclipse)

Ответ 20

Существует некоторая возможность добиться того же, Следуйте приведенным ниже пунктам.

1) Откройте Macro explorer:

2) Создайте новый макрос:

3) Назовите его "OutlineRegions" (или все, что вы хотите)

4) Щелкните правой кнопкой мыши на "OutlineRegions" ( "Показать в проводнике макросов" ) выберите "Изменить" и вставьте в него следующий код 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) Теперь давайте присвойте ярлык макросу. Перейдите в Инструменты- > Параметры- > Среда- > Клавиатура и найдите свой макрос в командах show show, содержащих текстовое поле (Тип: Макро в текстовое поле, оно предложит имя макроса, выберите ваш.)

7) теперь в текстовом поле в разделе "Нажмите клавиши быстрого доступа" вы можете ввести желаемый ярлык. Я использую Ctrl + M + N.

Использование:

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

8) Нажмите сохраненную комбинацию клавиш

См. ниже результат:

enter image description here