testing
This commit is contained in:
		@ -1,7 +1,11 @@
 | 
				
			|||||||
package main
 | 
					package main
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import "fmt"
 | 
					import (
 | 
				
			||||||
 | 
					        "fmt"
 | 
				
			||||||
 | 
					        "c.infdj.com/GO/courses_golang/hello/morestrings"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func main() {
 | 
					func main() {
 | 
				
			||||||
	fmt.Println("Hello, world.")
 | 
					        // fmt.Println("Hello, world.")
 | 
				
			||||||
 | 
					        fmt.Println(morestrings.ReverseRunes("!oG ,olleH"))
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										12
									
								
								hello/morestrings/reverse.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								hello/morestrings/reverse.go
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					// Package morestrings implements additional functions to manipulate UTF-8
 | 
				
			||||||
 | 
					// encoded strings, beyond what is provided in the standard "strings" package.
 | 
				
			||||||
 | 
					package morestrings
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// ReverseRunes returns its argument string reversed rune-wise left to right.
 | 
				
			||||||
 | 
					func ReverseRunes(s string) string {
 | 
				
			||||||
 | 
						r := []rune(s)
 | 
				
			||||||
 | 
						for i, j := 0, len(r)-1; i < len(r)/2; i, j = i+1, j-1 {
 | 
				
			||||||
 | 
							r[i], r[j] = r[j], r[i]
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return string(r)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										19
									
								
								hello/morestrings/reverse_test.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								hello/morestrings/reverse_test.go
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,19 @@
 | 
				
			|||||||
 | 
					package morestrings
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import "testing"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func TestReverseRunes(t *testing.T) {
 | 
				
			||||||
 | 
						cases := []struct {
 | 
				
			||||||
 | 
							in, want string
 | 
				
			||||||
 | 
						}{
 | 
				
			||||||
 | 
							{"Hello, world", "dlrow ,olleH"},
 | 
				
			||||||
 | 
							{"Hello, 世界", "界世 ,olleH"},
 | 
				
			||||||
 | 
							{"", ""},
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						for _, c := range cases {
 | 
				
			||||||
 | 
							got := ReverseRunes(c.in)
 | 
				
			||||||
 | 
							if got != c.want {
 | 
				
			||||||
 | 
								t.Errorf("ReverseRunes(%q) == %q, want %q", c.in, got, c.want)
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										31
									
								
								range/range.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								range/range.go
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,31 @@
 | 
				
			|||||||
 | 
					package main
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import "fmt"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func main() {
 | 
				
			||||||
 | 
						nums := []int{2, 3, 4}
 | 
				
			||||||
 | 
						sum := 0
 | 
				
			||||||
 | 
						for _, num := range nums {
 | 
				
			||||||
 | 
							sum += num
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						fmt.Println("sum:",sum)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						for i,num := range nums {
 | 
				
			||||||
 | 
							if num == 3 {
 | 
				
			||||||
 | 
								fmt.Println("index:",i)
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						kvs := map[string]string{"a":"apple", "b":"banana"}
 | 
				
			||||||
 | 
						for k, v := range kvs {
 | 
				
			||||||
 | 
							fmt.Printf("%s -> %s\n", k, v)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						for k := range kvs {
 | 
				
			||||||
 | 
							fmt.Println("key:", k)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						for i,c := range "go" {
 | 
				
			||||||
 | 
							fmt.Println(i,c)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
		Reference in New Issue
	
	Block a user