慢聊Go之GoVSJava之微观比较(6)|Go主题月

简介: 慢聊Go之GoVSJava之微观比较(6)|Go主题月

前言

如果学一门语言,第一个存储结构,可能都会是数组。数组,作为最简单,易用的数据结构。

我们要清晰地学习。现在呢,我们就来搞一搞Go的数组,看一下与Java的数组有啥区别。

走起来!!

Java数组

Java数组,我们很容易学习。

简单举例下:

public static void main(String[]args) {
    int[] a = {1,2,3}; // 一维数组 静态初始化
    int[] b = new int[3]; // 一维数组 动态初始化
    int[][] c = new int[3][3]; // 多维数组
}

具体的数组操作,我在这就不再赘述了,属于Javer的基础知识,没啥问题。

现在,我们开始进入Go的世界,看一下Go的数组的相关。

Go数组

Go的一维数组
var 数组名 [数组长度]数组类型 = [数组长度]数组类型{元素1,元素2...}

示例1:

package main
import "fmt"
//全局
var my_arr [6]int
var my_arr_1 [3]int = [3]int{1,2,3}
func main() {
   //方法内:
   this_arr := [2]int{1, 2}
   fmt.Println(my_arr)
   fmt.Println(my_arr_1)
   fmt.Println(this_arr)
}

我们可以很简单的,看出来,Go语言中,对于一维数组的定义与Java其实基本一致。很相似。

大家,可以自行进行对比。

Go中二维数组

其实在,Java中并不显式称二维数组,没有这个概念。在Go中就有这个概念。

package main
import "fmt"
//全局
var my_arr [4][6]int
var my_arr_1 [2][3]int = [...][3]int{{1, 2, 3}, {4, 5, 6}}
func main() {
   //方法内:
   this_arr := [2][3]int{{1, 2, 3}, {8, 8, 8}}
   // 第 2 纬度不能用 "..."。
   this_arr2 := [...][2]int{{1, 1}, {2, 2}, {3, 3}}
   fmt.Println(my_arr)
   fmt.Println(my_arr_1)
   fmt.Println(this_arr)
   fmt.Println(this_arr2)
}


目录
相关文章
|
9月前
|
存储 JSON Go
|
9月前
|
存储 安全 编译器
|
9月前
|
移动开发 算法 编译器
OAUTH之钉钉第三方授权 | GO主题月
hello,我是小魔童哪吒,欢迎点击关注,有更新,将第一时间呈现到你的面前 胖sir:小魔童,我今天收到了一个需求,期望我们做一个第三方登录的功能,用户可以通过第三方授权来登录我们的web
260 0
|
9月前
|
Go Cloud Native
为什么要写技术文章 | GO主题月
这个问题对于每一个人来说各有各的原因。有的为了写作变现,有的为了自己的兴趣,写小说,写文章,写书。
为什么要写技术文章 | GO主题月
|
9月前
|
网络安全 Go Cloud Native
SSH连接服务器后执行多条命令 |Go主题月
大家平时有没有遇到自己连接云服务器,ssh 连接上去之后,发现自己的一些小工具用不了 例如go build无法使用 ,由于我们安装配置golang 环境的时候,是在文件/etc/profile中写了配置,因此需要source 一下/etc/profile
119 0
SSH连接服务器后执行多条命令 |Go主题月
|
9月前
|
Linux Go Windows
|
9月前
|
Go Windows Cloud Native
5个步骤搞定protoc环境安装 | GO主题月
[TOC] 胖sir:不知道你有没有这样的疑惑,工作中发现很多新接触GO的小伙伴安装protoc的环境需要折腾很久,刚才开我装环境的时候也是花了好长时间,最后如何装好的也不知原因,网上查找了各种资源,也没有一篇文章可以很好的解决这个问题.
1540 0
|
5天前
|
人工智能 Go 调度
掌握Go并发:Go语言并发编程深度解析
掌握Go并发:Go语言并发编程深度解析
|
2天前
|
存储 Go
用Go语言实现一个单协程消费者模型
用Go语言实现一个单协程消费者模型
12 0
|
2天前
|
编译器 Go C语言
一文速通Go语言面向对象编程
一文速通Go语言面向对象编程
9 0