Ответ 1
Эта строка:
if(str2==${str}){
Должно быть:
if( str2 == str ) {
${
и }
выдадут вам синтаксическую ошибку, так как они должны использоваться только внутри Groovy Строки для шаблонов
как сравнить строку, которая передается как параметр
следующий метод не работает.
String str = "saveMe"
compareString(str)
def compareString(String str){
def str2 = "saveMe"
if(str2==${str}){
println "same"
}else{
println "not same"
}
}
также попробовал
String str = "India"
compareString(str)
def compareString(String str){
def str2 = "india"
if( str2 == str ) {
println "same"
}else{
println "not same"
}
}
Эта строка:
if(str2==${str}){
Должно быть:
if( str2 == str ) {
${
и }
выдадут вам синтаксическую ошибку, так как они должны использоваться только внутри Groovy Строки для шаблонов
Это должен быть ответ
str2.equalsIgnoreCase(str)
Если вы не хотите проверять верхний или нижний регистр, вы можете использовать следующий метод.
String str = "India"
compareString(str)
def compareString(String str){
def str2 = "india"
if( str2.toUpperCase() == str.toUpperCase() ) {
println "same"
}else{
println "not same"
}
}
Итак, теперь, если вы измените str на "iNdIa", он все равно будет работать, поэтому вы уменьшите вероятность того, что сделаете опечатку.
Самый короткий путь (будет печатать "не одинаково", потому что сравнение строк зависит от регистра):
def compareString = {
it == "india" ? "same" : "not same"
}
compareString("India")
используйте переменную def, если вы хотите сравнить любую строку. Для этого типа сравнения используйте код ниже.
def variable name = null
SQL-запрос даст вам некоторое возвращение. Используйте функцию с типом возврата def.
def functionname (def variablename) {
имя возвращаемой переменной
}
if ( "$ variable name" == "true" ) {
}
В Groovy, null == null
получает значение true
. Во время выполнения вы не узнаете, что произошло.
В Java ==
сравнивается две ссылки.
Это является причиной большой путаницы в базовом программировании, безопасно ли использовать равные. Во время выполнения null.equals даст исключение. У вас есть шанс узнать, что пошло не так.
В частности, вы получаете два значения из ключей, которые не существуют на карте (картах), ==
делает их равными.