অন্যরা উল্লিখিত হিসাবে, Go
টের্নারি ওয়ান-লাইনারগুলিকে সমর্থন করে না। তবে, আমি একটি ইউটিলিটি ফাংশন লিখেছি যা আপনাকে যা চান তা অর্জনে সহায়তা করতে পারে।
func IfThenElse(condition bool, a interface{}, b interface{}) interface{} {
if condition {
return a
}
return b
}
আপনি কীভাবে এটি ব্যবহার করতে পারেন তা দেখানোর জন্য এখানে কয়েকটি পরীক্ষার কেস দেওয়া আছে
func TestIfThenElse(t *testing.T) {
assert.Equal(t, IfThenElse(1 == 1, "Yes", false), "Yes")
assert.Equal(t, IfThenElse(1 != 1, nil, 1), 1)
assert.Equal(t, IfThenElse(1 < 2, nil, "No"), nil)
}
মজা করার জন্য, আমি আরও দরকারী ইউটিলিটি ফাংশনগুলি লিখেছি যেমন:
IfThen(1 == 1, "Yes")
IfThen(1 != 1, "Woo")
IfThen(1 < 2, "Less")
IfThenElse(1 == 1, "Yes", false)
IfThenElse(1 != 1, nil, 1)
IfThenElse(1 < 2, nil, "No")
DefaultIfNil(nil, nil)
DefaultIfNil(nil, "")
DefaultIfNil("A", "B")
DefaultIfNil(true, "B")
DefaultIfNil(1, false)
FirstNonNil(nil, nil)
FirstNonNil(nil, "")
FirstNonNil("A", "B")
FirstNonNil(true, "B")
FirstNonNil(1, false)
FirstNonNil(nil, nil, nil, 10)
FirstNonNil(nil, nil, nil, nil, nil)
FirstNonNil()
আপনি যদি এগুলির কোনও ব্যবহার করতে চান তবে আপনি সেগুলি এখানে পেতে পারেন https://github.com/shomali11/util