go导入包

go有很多内置的函数,例如println,不需要引用即可使用。但是如果不借助go的标准库或者第三方库,我们能做的事情有限。在go中,使用关键字import在代码中导入一个包并使用。

修改我们的程序:

package main

import (
"fmt"
"os"
) func main() {
if len(os.Args) != 2 {
os.Exit(1)
}
fmt.Println("It's over ", os.Args[1])
}

使用下面的命令运行:

go run main.go 9000

我们现在使用了2个go的标准包:fmtos。我们也引入了另外一个内置函数lenlen返回一个字符串大小或者一个字典中值的个数,或者如上代码所示,返回数组元素的个数。如果你想知道为什么这里我们使用2个参数,因为第一个参数即索引为0一直表示当前正在运行的可执行文件的路径(你可以自己修改程序并打印观察)。

你可能已经注意到了我们在函数名前加了包名作为前缀,例如,fmt.Println。这和其他许多语言不同。我们将会在接下来的章节学习更多关于包的内容。现在,只需知道怎么导入并使用包就是一个很好的开端。

go在导入包的时候是比较严格的,如果导入的包没有被使用,那么程序不能被编译。试着运行一下代码:

package main

import (
"fmt"
"os"
) func main() {
}

你会得到2个错误信息,提示fmtos包被导入但是没有被使用。你会觉得很不适应么?但是,过一段时间,你会变得适应(虽然任然很烦人)。go之所以这么严格是因为如果没有使用导入的包会使编译变慢。不可否认,这个问题我们很多人都没有考虑到。

另外,需要值得注意的是go的标准库提供了非常详细的文档。你可以在http://golang.org/pkg/fmt/#Println查询到更多关于Println函数的信息。你甚至可以点击章节标题查看源码。你也可以滚动到顶部学习更多关于go格式化输出的功能。

如果你不能上网,你可以在本地运行下面的命令获取这个文档:

godoc -http=:6060

并打开浏览器,输入http://localhost:6060

本文转自:http://codingdict.com/article/22519

go导入包的更多相关文章

  1. IntelliJ IDEA 自动导入包 快捷方式

    idea可以自动优化导入包,但是有多个同名的类调用不同的包,必须自己手动Alt+Enter设置 设置idea导入包 勾选标注 1 选项,IntelliJ IDEA 将在我们书写代码的时候自动帮我们优化 ...

  2. java 导入包(误区)

    java的导入包语句的作用仅仅是简化书写,很多时候我们都误以为是将一个类导入到内存中. 如果是这样,那么运行的效率会很慢.

  3. java 导入包

    导入包 问题:类名冲突时,要如何解决. 解决:sun提供导入包语句让我们解决该问题. 导入包语句的作用:简化书写. 导入包语句的格式:import 包名.类名;(导入xxx包的XX类) 导入包语句的细 ...

  4. [转]Golang- import 导入包的语法

    http://blog.csdn.net/zhangzhebjut/article/details/25564457 一 包的导入语法      在写Go代码的时候经常用到import这个命令用来导入 ...

  5. IntelliJ IDEA设置自动导入包

    IntelliJ IDEA可以自动优化导入包,但是有多个同名的类位于不同的包时,需要自己手动使用Alt + Enter进行导入. Settings→Editor→General→Auto Import ...

  6. eclipse自身导致的项目问题:上边提示需要移除无用包,下边类提示需要导入包。

  7. idea 自动导入包 快捷键

    idea可以自动优化导入包,但是有多个同名的类调用不同的包,必须自己手动Alt+Enter设置 设置idea导入包 勾选标注 1 选项,IntelliJ IDEA 将在我们书写代码的时候自动帮我们优化 ...

  8. android studio 自动导入包

    android studio 自动导入包 一.Android studio 的导单个包的快捷键是Alt+Enter (需要选中要导入包的类名再按快捷键才起作用): 二.Android studio 可 ...

  9. Java数组,导入包,foreach控制循环

    总见流星过,火花转瞬逝.何时见春雨,润物细无声. 导入包,例使用Scanner工具类,需要导入包: import  java.util.Scanner; ************ ********** ...

  10. IntelliJ IDEA 自动导入包 关闭重复代码提示

    idea可以自动优化导入包,但是有多个同名的类调用不同的包,必须自己手动Alt+Enter设置 设置idea导入包 勾选标注 1 选项,IntelliJ IDEA 将在我们书写代码的时候自动帮我们优化 ...

随机推荐

  1. disk或者Partition镜像的制作

    备份镜像还原一般都是在client-server端这边才有涉及,不过作为平时爱折腾的咸鱼,表示偶尔玩玩这种操作也不错: 工具:pc  X  1(装有 大白菜,装机吧,一类制作pe软件的即可,大同小异) ...

  2. LG1017 进制转换:负数进制

    题目描述 我们可以用这样的方式来表示一个十进制数: 将每个阿拉伯数字乘以一个以该数字所处位置的(值减1)为指数,以10为底数的幂之和的形式.例如:123可表示为 1×102+2×101+3×1001\ ...

  3. 关于Extjs6.0 controller文件过大,实现模块化分离

    Extjs一般都是一个视图对应着一个controller 一旦碰到视图中逻辑过于繁琐造成controller文件过大不利于维护和修改,所以要通过混入mixins混入功能来实现模块化! 首先创建一个视图 ...

  4. (14)C++ 代码重用

    valarray<,,,, };//进行高速的数字计算 int a= val.size();//返回包含元素个数 int b= val.sum();//元素总和 int c= val.max() ...

  5. C# winform 动态构建fastreport报表

    private void DoPrint() { DataView dv = (DataView)dgv_apply_details.DataSource; Report report = new R ...

  6. XML DTD详解

    XML DTD详解 一个有效的XML文档必然是结构正规的,结构正规的XML文档不一定是有效的,即有效的是格式正规的一个子集. 本文详细介绍DTD,包括其对元素的定义,属性的定义,以及实体的定义. 元素 ...

  7. python 根据字典的键值进行排序

    1.利用key排序 d = {'d1':2, 'd2':4, 'd4':1,'d3':3,} for k in sorted(d): print(k,d[k]) d1 2d2 4d3 3d4 1 2. ...

  8. 【Java】 java判断字符串是否为空的方法总结

    以下是java 判断字符串是否为空的四种方法: 方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低: if(s == null ||"".equals(s));方法二: ...

  9. [USACO14MAR]浇地Watering the Fields

    题目描述 Due to a lack of rain, Farmer John wants to build an irrigation system tosend water between his ...

  10. ubuntu中搭建基本的开发环境

    1.搭建基本开发环境: sudo apt-get install build-essential 2.安装语法.词法分析器 sudo apt-get install bison flex 3.安装C函 ...