Параметр доступа к проекту в сценарии многострочной оболочки в конвейере дженкинсов [дубликат]

Вы можете вызвать getActivity() или

public void onAttach(Context context) {
    super.onAttach(context);
    this.activity = (CashActivity) context;
    this.money = this.activity.money;
}
55
задан Freewind 20 July 2011 в 12:57
поделиться

2 ответа

Одиночные кавычки - это стандартная строка java String

. Двойные кавычки - это шаблонная String, которая либо вернет GString, если она затенена, либо стандартная строка Java. Например:

println 'hi'.class.name    // prints java.lang.String
println "hi".class.name    // prints java.lang.String

def a = 'Freewind'
println "hi $a"            // prints "hi Freewind"
println "hi $a".class.name // prints org.codehaus.groovy.runtime.GStringImpl

Если вы пытаетесь использовать шаблоны с одиночными кавычками, это ничего не делает, поэтому:

println 'hi $a'            // prints "hi $a"

Кроме того, ссылка julkiewicz в их ответе стоит прочитать (особенно часть о GStrings не является строками около 2/3 пути вниз.

90
ответ дан Community 19 August 2018 в 06:28
поделиться
  • 1
    Хорошая мысль о том, что GString не является String. Это становится проблематичным при сравнении сравнений сравнений между GString и String, хотя они содержат одни и те же символы. Это то, что вам нужно научиться, особенно если вы ссылаетесь на клавиши String / GString на картах. – Steven 21 July 2011 в 04:24

Я понимаю, что строка с двумя кавычками может содержать встроенные ссылки на переменные и другие выражения. Например: "Hello $name", "Hello ${some-expression-here}". В этом случае вместо обычного String будет создан экземпляр GString. С другой стороны, одиночные кавычки не поддерживают этот синтаксис и всегда приводят к простой String. Подробнее о теме:

http://docs.groovy-lang.org/latest/html/documentation/index.html#all-strings

13
ответ дан mkobit 19 August 2018 в 06:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: