欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

反转带有空格的字符串

程序员文章站 2024-02-23 17:05:04
...
package main

import (
	"bufio"
	"fmt"
	"os"
	"strings"
)

func main() {
	reversal01()
}
/*
接受用户输入带有空格的字符串,然后将字符串反转,交给一个字符串的切片或者数组
*/
func reversal01() {
	fmt.Println("请输入:")
	//获取从键盘输入的值
	var inputReader *bufio.Reader
	inputReader = bufio.NewReader(os.Stdin)
	str,_ := inputReader.ReadString('\n')//接收到从键盘输入的值,接收到换行即回车的时候不接收
	//但是会把换行符接收下来,也就是接收的字符串带有一个换行
	str = strings.Replace(str,"\n","",-1)//将换行个替换为空
	//将接收到的字符串为rune切片
	arr := []rune(str)
	fmt.Println("交换前=",str)
	var tem = ' '//定义的一个临时的变量用于交换
	//用for循环进行交换
	//交换的次数是数组的长度 / 2
	for i := 0;i < len(arr)/2;i++{
		tem = arr[len(arr)-i-1]
		arr[len(arr)-i-1] = arr[i]
		arr[i] = tem
	}
	//因为rune切片输出的是ASCll码值,所以要将rune切片转为字符串
	str = string(arr)
	//再将其转为字符串切片
	var strarr []string
	strarr= append(strarr,str)
	fmt.Println("交换后=",strarr)
}