开发环境构建

GOPATH

  1. 在1.8版本前必须设置这个环境变量
  2. 1.8以及更高版本如果没有设置,则使用默认值
    在Mac上GOPATH可以通过修改 ~/.bash_profile来设置

程序基本结构

package main //包,表明代码所在的模块(包)和java以及dotnet 命名空间是相似的

import "fmt" //依赖关系引用 和java以及dotnet的using、import相似

//方法函数
func main(){
fmt.Println("Hello World!")
}

应用程序入口

  1. 必须是main包:package main
  2. 必须是main方法: func main(){}
  3. 文件名称不强制是main.go,也可以是index.go

退出返回值

  • Go中main函数不支持任何返回值
  • 通过os.Exit来返回状态 需要import “os”
package hello

import (
"fmt"
"os"
) func main() {
fmt.Println("Hello World") os.Exit(-1)
}

执行结果:

go run hello_world.go
Hello World
exit status 255

获取命令行参数

  • main函数不支持传入参数
  • 在程序中直接通过 os.Args 获取命令行参数

示例代码

package main

import (
"fmt"
"os"
) func main() {
fmt.Println(os.Args)
fmt.Println("Hello World")
}

输出结果

$ go run hello_world.go zhang
[/var/folders/zg/0_xcqssx6pj7g8p96ppl66ww0000gn/T/go-build244907203/b001/exe/hello_world zhang]
Hello World

改进后的代码:

package main

import (
"fmt"
"os"
) func main() {
if len(os.Args)>1 {
fmt.Println("Hello World",os.Args[1])
}else {
fmt.Println("Hello World")
}
}

输出结果

$ go run hello_world.go zhang
Hello World zhang

示例代码请访问: https://github.com/wenjianzhang/golearning

学习go第一天-编写第一个go程序的更多相关文章

  1. Java学习2——HelloWorld(编写第一个java程序)

    编写 在自己的工作文件目录下(如上一篇中配置的classpath路径)创建HelloWorld.java文件,编写如下代码,并保存 public class HelloWorld { public s ...

  2. Android学习笔记(第一篇)编写第一个程序Hello World+Activity

    PS:终于开始正式的搞Android了...无人带的一介菜鸟,我还是自己默默的努力吧... 学习内容: 1.编写第一个Hello World程序..   学习Android,那么就需要有一个编译器来集 ...

  3. 一起学Hadoop——使用IDEA编写第一个MapReduce程序(Java和Python)

    上一篇我们学习了MapReduce的原理,今天我们使用代码来加深对MapReduce原理的理解. wordcount是Hadoop入门的经典例子,我们也不能免俗,也使用这个例子作为学习Hadoop的第 ...

  4. 假期作业02:安装JDK与文本编辑器并编写第一个Java程序

    假期作业02:安装JDK与文本编辑器并编写第一个Java程序 一.安装JDK与文本编辑器并编写第一个java程序 首先在oracle官网(需要创建账号,进行登录后方可使用)按照自己的需求下载JDK(h ...

  5. 搭建java开发环境、使用eclipse编写第一个java程序

    搭建java开发环境.使用eclipse编写第一个java程序 一.Java 开发环境的搭建 1.首先安装java SDK(简称JDK). 点击可执行文件 jdk-6u24-windows-i586. ...

  6. 【安装eclipse, 配置java环境教程】 编写第一个java程序

    写java通常用eclipse编写,还有一款编辑器比较流行叫IJ.这里我们只说下eclipse编写java的前期工作. 在安装eclipse之前要下载java的sdk文件,即java SE:否则无法运 ...

  7. 【C#入门教案-02】用记事本编写第一个C#程序-Hello World

    02-用记事本编写第一个C#程序-Hello World 广东职业技术学院  欧浩源 [1]进行.NET程序开发的最基本环境配备 .NET Framework + 代码编辑工具(记事本或Noetpad ...

  8. 从零自学Java-1.编写第一个Java程序

    编写第一个Java程序 完成工作:1.在文本编辑器中输入一个Java程序. 2.使用括号组织程序. 3.保存.编译和运行程序. package com.Jsample;//将程序的包名称命名为com. ...

  9. Java笔记:编写第一个Java程序

    2017.6.17 1.编写第一个Java程序 创建text文本,命名第一个Java程序.txt 在里面编写Java代码 public class Demo1{ public static void ...

随机推荐

  1. 面试开挂:近百道Java面试题整理

    1.什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”? Java虚拟机是一个可以执行Java字节码的虚拟机进程.Java源文件被编译成能被Java虚拟机执行的字节码文件. Java被 ...

  2. python的基础认识

    一.python的简介    python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,Guido开始写能够解释Python语言语法的解释器.Python这个名 ...

  3. Jenkins 与Docker/Kubernetes的自动化CI流水(笔记)

    一.CI/CD 持续集成(continuous Integration,CI):代码合并.构建.部署.测试都在一起.不断执行这个过程,并对结果反馈. 持续部署(Continuous Deploymen ...

  4. [剑指offer]删除链表中重复的结点(把重复的都删掉,1个不留)

    ①题目 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针. 例如,链表1->2->3->3->4->4->5 处理后为 ...

  5. Flutter 构建的 Mac 桌面应用上无法发出网络?

    在上一篇文章中我们分享了,如何开发桌面应用.在本章文章中,来解决一下为何在 Mac 中无法发出网络情况的原因. 起因 事情​起因是这样的:我总觉得写一个 Demo 不足以体现我们开发同学的能力.直到最 ...

  6. PhpStudy BackDoor2019 深度分析

    笔者<Qftm>原文发布<合天>:https://mp.weixin.qq.com/s?__biz=MjM5MTYxNjQxOA==&mid=2652852661&am ...

  7. python高阶函数的使用

    目录 python高阶函数的使用 1.map 2.reduce 3.filter 4.sorted 5.小结 python高阶函数的使用 1.map Python内建了map()函数,map()函数接 ...

  8. 【原创】(十一)Linux内存管理slub分配器

    背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本: ...

  9. windows 10 上源码编译boost 1.66.0 | compile boost 1.66.0 from source on windows 10

    本文首发于个人博客https://kezunlin.me/post/854071ac/,欢迎阅读! compile boost 1.66.0 from source on windows 10 Ser ...

  10. 启动elasticsearch

       - name: source env      shell: source /etc/profile    - name: make elastic permission      shell: ...