Skip to content

Commit 087b630

Browse files
committed
update README.md, add example code diff
1 parent bf85b7e commit 087b630

File tree

2 files changed

+35
-0
lines changed

2 files changed

+35
-0
lines changed

README.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,33 @@
55
Golang中缺少三元表达式,就导致某些情况三元表达式一行就能搞定的事情到Golang里面就得写得很啰嗦,
66
这是无法忍受的,~~这个库就是借助大量自定义的if函数来实现类似三元表达式的功能~~,最新版本是基于泛型实现的。
77

8+
使用此库之前:
9+
10+
```go
11+
if a % 2 == 0 {
12+
return "偶数"
13+
} else {
14+
return "奇数"
15+
}
16+
```
17+
18+
使用此库之后:
19+
20+
```go
21+
return if_expression.Return(a % 2 == 0, "偶数", "奇数")
22+
```
23+
24+
对比:
25+
26+
```diff
27+
- if a % 2 == 0 {
28+
- return "偶数"
29+
- } else {
30+
- return "奇数"
31+
- }
32+
+ return if_expression.Return(a % 2 == 0, "偶数", "奇数")
33+
```
34+
835
## 二、引入依赖
936

1037
go get安装:

if_expression_test.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,3 +16,11 @@ func ExampleReturn() {
1616
// Output:
1717
// 是
1818
}
19+
20+
func TestMap(t *testing.T) {
21+
m := map[string]interface{}{
22+
"foo": "bar",
23+
}
24+
//t.Log(m["bad"]) // nil
25+
t.Log(Return(m["bad"] != nil, m["bad"], "aaa")) // ⚠️ 范型传nil进来就panic了.
26+
}

0 commit comments

Comments
 (0)