PHP自学Go日记(七):数字、字符串类型的引用变量

这是在PHP中的引用变量:

<?php

$a = 1;
$b &= $a;
$b = 2;

echo $a; // 2

 

在Go中也存在引用变量这一概念,不过比PHP稍显复杂,我们先看一下代码: 

package main

import(
	"fmt"
)

func main () {
    a := 1
    b := &a
    *b = 2

    fmt.Println("a = ", a) // 2
}

在Go中,有一个概念叫指针,表示每个表量的临时虚拟存储地址。

当初始化变量a时,变量的实际存储情况如下:

当初始化变量b时,我们注意到在变量a前面添加了修饰符“&”,表示变量b的变量值为变量a的指针。如下图所示:

 

当我们需要通过变量b改变变量a的值时,不能直接使用“b = 2”这种写法,否则只会改变变量b的变量值,因此我们使用了“*b = 2”这种写法。修饰符“*”代表我们要改变的是该变量值中指针指向的变量值。如下图所示:

 

 

在函数中改变函数外的变量:

package main

import(
	"fmt"
)

func main () {
    a := 1
    changeValue(&a)
    fmt.Println("a = ", a) // 2
}

/*
    入参类型前加“*”代表参的原始值是变量值内存地址
	如果直接使用变量,会拿到内存地址,变量前加“*”才会拿到引用变量的值
*/
func changeValue(b *int){
    *b = 2
}

在函数中,入参的类型声明前添加修饰符“*”,代表仅接受整形变量的指针传入。同样的,在函数体内使用修饰符“*”才能改变a的值。

注:以上内容仅适用于整形、浮点型及字符串类型,其他类型处理方法有所不同。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当涉及到字符串处理时,以下是一些 Python 字符串相关的常见知识点: 1. 字符串创建:在 Python ,您可以使用单引号或双引号来创建字符串。例如:`str1 = 'Hello'` 或 `str2 = "World"` 2. 字符串连接:您可以使用 `+` 运算符将两个字符串连接起来。例如:`str3 = str1 + str2` 3. 字符串长度:通过使用 `len()` 函数,您可以获取字符串的长度。例如:`length = len(str1)` 4. 字符串索引和切片:可以使用索引和切片操作来访问字符串的单个字符或子字符串。例如:`char = str1[0]` 或 `substring = str1[1:4]` 5. 字符串常用方法: - `upper()`:将字符串转换为大写。 - `lower()`:将字符串转换为小写。 - `strip()`:去除字符串开头和结尾的空格。 - `replace(old, new)`:将字符串的旧字符或子字符串替换为新字符或子字符串。 - `split(delimiter)`:将字符串拆分为子字符串列表,根据指定的分隔符进行拆分。 - `join(iterable)`:将可迭代对象的元素连接为一个字符串,使用指定的字符串作为连接符。 - `startswith(prefix)` 和 `endswith(suffix)`:检查字符串是否以指定的前缀或后缀开头/结尾。 6. 字符串格式化:使用 `%` 运算符或 `format()` 方法将变量的值插入到字符串的占位符位置。例如: ```python name = "Alice" age = 25 message = "My name is %s and I am %d years old." % (name, age) ``` 或 ```python name = "Alice" age = 25 message = "My name is {} and I am {} years old.".format(name, age) ``` 7. 转义字符:在字符串使用反斜杠 `\` 来表示特殊字符,例如换行符 `\n`、制表符 `\t` 等。 8. 字符串比较:可以使用比较运算符(如 `==`、`!=`、`>`、`<` 等)对字符串进行比较操作。 9. 字符串的不可变性:在 Python 字符串是不可变的,这意味着一旦创建了一个字符串,就无法更改其内容。 10. 字符串编码和解码:Python 默认使用 Unicode 字符编码。可以使用 `encode()` 方法将字符串编码为字节序列,或使用 `decode()` 方法将字节序列解码为字符串。 这只是一些与字符串处理相关的基本知识点。当您深入学习 Python 字符串时,还会遇到更多高级的字符串操作和方法。建议您参考 Python 官方文档或其他教程来深入学习有关字符串的更多内容。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值