建站教程

建站教程

Products

当前位置:首页 > 建站教程 >

Go基础之基本数据类型(javascript中split字符串分割函数)

GG网络技术分享 2025-03-18 16:14 1


Go基础之基本数据类型

静态数据类型和动态数据类型的区别

  • 编译时就知道变量类型的是静态类型;运行时才知道一个变量类型的叫做动态类型。
  • 不允许隐式转换的是强类型,允许隐式转换的是弱类型。

整数

  • 有符号整型

有符号整数类型

描述

数值范围

int

在32位的操作系统就是int32,,64位操作系统就是int64

32位系统跟int32一样,64位系统跟int64一样

int8

有符号8位整型

-128到127

int16

有符号16位整型

-32768到32767

int32

有符号32位整型

-2147483648到2147483647

int64

有符号64位整型

-92223372036854775808 - 92223372036854775807

  • 无符号整型

无符号整数类型

描述

数值范围

uint

在32位的操作系统就是uint32,,64位操作系统就是uint64

32位系统跟uint32一样,64位系统跟uint64一样

uintptr

无符号整型指针

0到18446744073709551615

uint8

无符号8位整型

0到255

uint16

无符号16位整型

0到65535

uint32

无符号32位整型

0到4294967295

uint64

无符号64位整型

0到18446744073709551615

浮点型

package main

import (

"fmt"

"math"

)

func main() {

fmt.Printf("%f\\n", math.Pi)

fmt.Printf("%.2f\\n", math.Pi)

}

// result

// 3.141593

// 3.14

复数类型

package main

import (

"fmt"

)

func main() {

var v1 complex64

v1 = 3.2 + 12i

v2 := 3.2 + 12i

v3 := complex(6.4, 12)

v := v2 + v3

fmt.Println(v1, v2, v3, v)

}

// resutl (3.2+12i) (3.2+12i) (6.4+12i) (9.600000000000001+24i)

布尔类型

package main

import "fmt"

func main() {

var a bool

fmt.Printf("%v\\n", a)

}

// result false

字符串类型

package main

import "fmt"

func main() {

var str1 string

str1 = "jack"

fmt.Println("str1 = ", str1) //

// 自动推导类型

str2 := "rise"

fmt.Printf("str2类型是 %T\\n", str2)

fmt.Println("len(str2)=", len(str2)) // 使用内置函数len取字符串长度

}

// result

// str1 = jack

// str2类型是 string

// len(str2)= 4

  • 字符串一些常用方法

方法

描述

len(str)

去字符串长度

+或者fmt.Sprintf()

拼接字符串

strings.Split

分割字符串

strings.contains

判断字符串是否包含子串

strings.HasPrefix

判断字符串前缀位置

strings.HasSuffix

判断字符串后缀位置

strings.Join

字符串join操作

strings.Index

子串出现的位置

字符类型

package main

import "fmt"

func main() {

var char byte // 声明字符类型

char = 97

fmt.Printf("%c %d\\n", char, char)

char = 'a'

fmt.Printf("%c, %d\\n", char, char)

}

fmt包格式化输出

  • 格式化输出对照表

格式

含义

%%

一个%字面量

%b

一个二进制整数值(基数为2),或者是一个(高级的)用科学计数法表示的指数为2的浮点数

%c

字符型。可以把输入的数字按照ASCII码相应转换为对应的字符

%d

一个十进制数值(基数为10)

%e

以科学记数法e表示的浮点数或者复数值

%E

以科学记数法E表示的浮点数或者复数值

%f

以标准记数法表示的浮点数或者复数值

%g

以%e或者%f表示的浮点数或者复数,任何一个都以最为紧凑的方式输出

%G

以%E或者%f表示的浮点数或者复数,任何一个都以最为紧凑的方式输出

%o

一个以八进制表示的数字(基数为8)

%p

以十六进制(基数为16)表示的一个值的地址,前缀为0x,字母使用小写的a-f表示

%q

使用Go语法以及必须时使用转义,以双引号括起来的字符串或者字节切片[]byte,或者是以单引号括起来的数字

%s

字符串。输出字符串中的字符直至字符串中的空字符(字符串以'\\0‘结尾,这个'\\0'即空字符)

%t

以true或者false输出的布尔值

%T

使用Go语法输出的值的类型

%U

一个用Unicode表示法表示的整型码点,默认值为4个数字字符

%v

使用默认格式输出的内置或者自定义类型的值,或者是使用其类型的String()方式输出的自定义值,如果该方法存在的话

%x

以十六进制表示的整型值(基数为十六),数字a-f使用小写表示

%X

以十六进制表示的整型值(基数为十六),数字A-F使用小写表示

  • 格式化输出

package main

import "fmt"

func main() {

a := 10

b := "abc"

c := 'a'

d := 3.14

fmt.Printf("%T,%T,%T,%T\\n", a, b, c, d)

fmt.Printf("a=%d, b=%s, c=%c, d=%f\\n", a, b, c, d)

fmt.Printf("a=%v, b=%v, c=%v, d=%v\\n", a, b, c, d)

}

// result

// int,string,int32,float64

// a=10, b=abc, c=a, d=3.140000

// a=10, b=abc, c=97, d=3.14

基础数据类型转换

  • 强制类型转换语法

T(表达式)

// T表示要转换的类型。表达式包括变量和函数返回值等.

  • 数值类型之间的转换

package main

import (

"fmt"

)

func main() {

var i int32 = 100

var n1 float32 = float32(i)

var n2 int8 = int8(i)

var n3 int64 = int64(i)

fmt.Printf("i=%v n1=%v n2=%v n3=%v \\n", i, n1, n2, n3)

fmt.Printf("i type is %T\\n", i) // int32

var num1 int64 = 100

var num2 int8 = int8(num1)

fmt.Println("num2=", num2)

}

// result

// i=100 n1=100 n2=100 n3=100

// i type is int32

//num2= 100

  • strconv包转换

package main

import (

"fmt"

"strconv"

)

func main() {

str1 := "10"

int1, _ := strconv.Atoi(str1) // string -> int

fmt.Println(int1)

int2 := 99

str2 := strconv.Itoa(int2) // int -> string

fmt.Println(str2)

// float -> string

float1 := 99.99

str3 := strconv.FormatFloat(float1, 'f', -1, 64)

fmt.Println(str3)

// string -> bool

str4 := "true"

bool1, _ := strconv.ParseBool(str4)

fmt.Println(bool1)

// string -> float64

str5 := "99.66"

float2, _ := strconv.ParseFloat(str5, 64) //第二个参数为指定的float精度

fmt.Println(float2)

// string -> byte

str6 := "99"

byte1 := []byte(str6)

fmt.Println(byte1)

}

// result

//10

//99

//99.99

//true

//99.66

//[57 57]

byte类型和rune类型

  • 利用rune跟byte修改字符串

package main

import (

"fmt"

)

func changeString() {

s1 := "jack" // 强制类型转换

byteS1 := []byte(s1)

byteS1[0] = 'p'

fmt.Println(string(byteS1))

s2 := "你好"

runeS2 := []rune(s2)

runeS2[0] = '我'

fmt.Println(string(runeS2))

}

func main() {

changeString()

}

// result

// pack

// 我好

javascript中split字符串分割函数

javascript中split字符串分割函数

假设需要分割的字符串是:s=”….fs…fs….”,其中 fs 代表用以分隔的字符或字符串。

定义和用法

split()方法用于把一个字符串分割成字符串数组。

语法

stringObject.split(separator,howmany)

实例一

<script>

var ss=s.split(\"fs\");

for(var i=0;i<ss.length;i++){

//处理每一个 ss[i];

}

</script>

实例二

在本例中,我们将分割结构更为`复杂`的字符串:

\"2:3:4:5\".split(\":\") //将返回[\"2\", \"3\", \"4\", \"5\"]

\"|a|b|c\".split(\"|\") //将返回[\"\", \"a\", \"b\", \"c\"]

实例三

<script>

var str = \"一二三四\";

var str1 = \"篮球、排球、乒乓球\";

var arr = str.split(\"\");//全部分割

var arr1 = str1.split(\"、\");//按照顿号分割

var arr2 = str1.split(\"、\",2);//按照顿号分割,保留两段

</script>

实例四

<input id=\"x\" type=\"text\"/>

<input id=\"x\" type=\"text\"/><input type=\"button\" onclick=\"x()\" value=\"输入邮件地址,获取用户名\"/>

<script>

<script>

function x(){

var x=document.getElementById(\"x\").value.toString();

var c=x.split(\"@\");

document.getElementById(\"x\").value=c[0];

}

</script>

注释:如果把空字符串 (“”) 用作 separator,那么 stringObject 中的每个字符之间都会被分割。

总结:split 函数很像我们以前学的 php 和 asp 中的字符分割函数,它只要以什么作分割线就可以把我们要的内容分割成数组了。

以上就是实例详解javascript中split字符串分割函数的详细内容,更多请关注网站的其它相关文章!

javascript中split字符串分割函数 (https://www.wpmee.com/) javascript教程 第1张

标签:

提交需求或反馈

Demand feedback