目录标题
Http
一.Get
go
复制代码
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func main() {
response, err := http.Get("http://www.baidu.com")
if err != nil {
fmt.Println("Http Get request failed:", err)
return
}
defer response.Body.Close()
body, err := ioutil.ReadAll(response.Body)
if err != nil {
fmt.Println("Failed to read response body:", err)
return
}
fmt.Println(string(body))
}
二、Post
go
复制代码
package main
import (
"fmt"
"io/ioutil"
"net/http"
"strings"
)
func main() {
url := "http://example.com"
payload := strings.NewReader("key1=value1&key2=value2")
req, err := http.NewRequest("POST", url, payload)
if err != nil {
fmt.Println("Failed to create POST request:", err)
return
}
req.Header.Set("Content-Type", "application/x-www-form-urlencoded")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
fmt.Println("HTTP POST request failed:", err)
return
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
fmt.Println("Failed to read response body:", err)
return
}
fmt.Println(string(body))
}
三、Http服务器
go
复制代码
package main
import (
"fmt"
"net/http"
)
func main() {
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hello, World!")
})
err := http.ListenAndServe(":8080", nil)
if err != nil {
fmt.Println("Failed to start HTTP server:", err)
}
}
// 终端输入命令 go run main.go 当看见fmt中的内容意味着8080端口被占用
// 在服务器成功启动后,你可以在浏览器中访问http://localhost:8080,应该会看到"Hello, World!"的输出。当你在浏览器中刷新页面时,服务器会再次响应相同的消息。要停止服务器,你可以在终端中按下Ctrl+C来中断运行。
BubbleSort冒泡排序
go
复制代码
package main
import (
"fmt"
)
func BubbleSort(arr *[5]int) {
fmt.Println("使用冒泡排序前arr=", (*arr))
temp := 0 // 用于在排序过程中进行值的交换
for i := 0; i < len(*arr)-1; i++ { // i = 0, 1, 2, 3
for j := 0; j < len(*arr)-1-i; j++ {
if (*arr)[j] > (*arr)[j+1] { // 判断当前 是否与下一个值小
temp = (*arr)[j] // 小则temp记录当前数值
(*arr)[j] = (*arr)[j+1] // 覆盖当前数值
(*arr)[j+1] = temp // 替换数值
}
}
}
}
func main() {
arr := [5]int{22, 55, 28, 77, 11}
BubbleSort(&arr)
fmt.Println("使用冒泡排序后arr=", arr)
}
// 使用冒泡排序前arr= [22 55 28 77 11]
// 使用冒泡排序后arr= [11 22 28 55 77]