0


java中字面量和golang中字面量区别

Java 和 Go 语言中的字面量(literals)在概念上是相似的,都是表示固定值的符号表示形式。然而,它们在语法和支持的类型上有一些区别:

  1. 整数字面量:- Java: 整数字面量可以是十进制、十六进制或二进制。Java 7 引入了二进制字面量表示法。int decLiteral =123;// 十进制int hexLiteral =0x7B;// 十六进制int binLiteral =0b1111011;// 二进制(Java 7及以上)- Go: 整数字面量同样可以是十进制、十六进制或二进制。Go 语言也支持指定整数的大小(如 int, int8, int32, int64, uint, uint8, uint32, uint64)。var decLiteral int=123// 十进制var hexLiteral int=0x7B// 十六进制var binLiteral int=0b1111011// 二进制var bigLiteral int64=0x123456789ABCDEF// 大整数
  2. 浮点数字面量:- Java: 浮点数字面量通常带有小数点,可以是十进制或科学计数法。double floatLiteral =123.45;// 十进制double sciLiteral =1.23e4;// 科学计数法- Go: 浮点数字面量同样可以是十进制或科学计数法,并且 Go 语言区分 float32float64var floatLiteral float64=123.45// 十进制var sciLiteral float64=1.23e4// 科学计数法
  3. 字符串字面量:- Java: 字符串字面量用双引号表示。String str ="Hello, World!";- Go: 字符串字面量可以用双引号或反引号(表示原始字符串)。var str string="Hello, World!"// 双引号var rawStr string=`Hello, World!`// 反引号,包含特殊字符
  4. 布尔字面量:- Java: 布尔字面量是 truefalseboolean flag =true;- Go: 布尔字面量同样是 truefalse
  5. 字符字面量:- Java: 字符字面量用单引号表示,可以是 ASCII 字符或 Unicode 字符。char ch ='A';char unicodeChar ='\u0041';- Go: 字符字面量也用单引号表示,可以是 ASCII 或 Unicode。var ch rune='A'// rune 是 Go 中表示 Unicode 字符的类型var unicodeChar rune='\u0041'
  6. 空字面量:- Java: 空字面量是 nullString nullStr =null;- Go: 空字面量是 nilvar nilStr *string=nil
  7. 复合字面量:- Java: 从 Java 9 开始,支持使用菱形符号 <> 来声明和初始化泛型实例。List<String> list =newArrayList<>();- Go: 支持使用花括号 {} 来创建数组、切片、映射和结构体的复合字面量。var arr [3]int=[3]int{1,2,3}var slice []int=[]int{1,2,3}var mapVal map[string]int=map[string]int{"one":1,"two":2}var structVal struct{Name string; Age int}=struct{Name:"Alice", Age:30}

尽管两种语言在字面量的表示上有许多相似之处,但它们在类型系统、语法和一些特定字面量的使用上有所不同。

标签: java golang python

本文转载自: https://blog.csdn.net/weixin_41020960/article/details/140841547
版权归原作者 王伯爵 所有, 如有侵权,请联系我们删除。

“java中字面量和golang中字面量区别”的评论:

还没有评论