Golang小技巧

Golang小技巧

作为一个golang新手,我们要写很多简单的golang代码,却又很想保留这些代码。

可是写下一个小程序的时候又不得不注释掉一些代码,渐渐的main函数很乱,或者有很多入口。

这里我介绍一种方法。即可以保留这些代码,又不会因为后续新增的代码导致他们很乱。

用到了golang的一些特性:

1. 加载一个包时,会自动运行其中的init()方法,一个包可以定义多个init方法,而且每个init()方法都会被调用。

2.import _ “xxxxx” 引入一个包,即使没调用里面的函数也不会报错,而且会执行其中的init()方法。

这是我的main package

package main import _ "learn" func main(){           }

当然你直接保存运行上面代码,有learn包的话不会报错,运行良好。当然如果learn包不存在肯定会报错。

如果我要写一个打印hello world!的小程序的话    我是这样做的:

在learn目录下建一个helloworld.go文件

package learn import "fmt" func init(){ //  return     fmt.Println("hello world!") }

保存运行… 什么结果呢?

输出:hello world!

如果不想这段代码运行直接在init里面return就可以了

这样每一个小程序一个文件,用init()代替了main()当做入口方法。是不是很方便呢?

转载于:https://my.oschina.net/yearnfar/blog/187278

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/109949.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • idea快捷键汇总mac_mac版本IDEA快捷键「建议收藏」

    idea快捷键汇总mac_mac版本IDEA快捷键「建议收藏」本文中的快捷键均为系统默认配置。一、mac系统键盘和符号对应关系1.Control(或Ctrl)⌃2.CapsLock⇪3.Command(或Cmd)⌘4.Option(或Alt)⌥5.Shift⇧二、mac系统自有快捷键1.command系列1).command+space切换输入法2).command+M最小化当前窗口3).command+Q关闭当前程序(…

  • linux拷贝目录并修改名字,linux复制文件夹、重命名文件夹、删除文件夹

    linux中复制命令为cp(即copy缩写),重命名使用mv命令(即move缩写)来实现,删除命令为rm(即remove缩写)。如果操作对象是单个文件,复制和删除以及重命名很简单,如下:cpa.txtA.txt(将a.txt另存为A.txt)mva.txtA.txt(将a.txt重命名为A.txt)rma.txt(删除a.txt)linux删除和复制文件夹但是如果直接用下面…

  • 使用aspose把各种文件转换成pdf

    使用aspose把各种文件转换成pdfpackagecom.fh.util;importjava.io.File;importjava.io.FileInputStream;importjava.io.FileOutputStream;importjava.io.IOException;importjava.io.InputStream;importorg.apache.pdfbox.pdmodel.PD…

  • 我要自学编程,Java和C语言相比哪个好?[通俗易懂]

    我要自学编程,Java和C语言相比哪个好?[通俗易懂]JavaJava是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。C语言学习C语言是一种计算机程序设计语言,属高级语言范畴。它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序,代码清晰精简,十分灵活。语言没有好坏之分,无论学习哪个语言

  • Nginx 0.8.53 FastCGI参数详解

    Nginx 0.8.53 FastCGI参数详解来源地址:http://blog.csdn.net/eric1012/article/details/6075460以下配置都是基于Nginx0.8.53版本做解析。资源来源于个人翻译,网上摘录,如有错误信息地方,请提醒修正。本人已经制作PDF版本,可以直接下载查阅。 http://blogimg.chinaunix.net/blog/upfile2/101214

  • java static关键字的作用是什么_java中的static关键字

    java static关键字的作用是什么_java中的static关键字一、static代表着什么在Java中并不存在全局变量的概念,但是我们可以通过static来实现一个“伪全局”的概念,在Java中static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,当然也可以修饰代码块。Java把内存分为栈内存和堆内存,其中栈内存用来存放一些基本类型的变量、数组和对象的引用,堆内存主要存放一些对象。在JVM加载一个类的时候,若该类存在static修饰的成员变量…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号