前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JAVA转Golang

JAVA转Golang

作者头像
疯狂的KK
发布2021-03-03 14:50:27
1.5K0
发布2021-03-03 14:50:27
举报
文章被收录于专栏:Java项目实战Java项目实战

GO语言因其并行机制出现在大众的视野中,Go编译到机器码非常的快速,它是快速的、静态类型编译语言,但是感觉上是动态类型,解释型语言,要说响应式编程应该reactive,webflux,RXJava,netty这几个词要关联性高一些,当然Go不针对这一块。

Java转Go是非常简单又困难的,简单的是基本的语法是90%在通用的,只有差异,但大多语法还是通用,困难的是编程习惯,Go提倡一种事情有且只有一种方法完成,比如没有++i,只有i++,很多变量声明条件又像js或者java新版本语法,需要你摒弃以前的思维去学习,Go是教你如何使用而不是为什么

学习Go语言作者说用 Go 写程序会非常开心!而事实证明拥有编程思维的你去学习Go时,实在是不开心,往往都是因为语法的编程习惯而需要重新检查demo

1.Hello World

准备环境:vscode,Go语言SDK,

代码语言:javascript
复制
package main

import "fmt"
func main(){
  fmt.Println("hello")
}

注意:未曾使用的包导入会报错,语句结束另起一行,不需要;结尾,也就是每一条语句占用一行

代码语言:javascript
复制
package main

import "fmt"
import "unsafe"
func main(){

  fmt.Println("hello")
  var n1=100
  fmt.Printf("n1 的类型%T \n",n1)
  var n2 int64=10
  fmt.Printf("n2 的类型%T \n   n2字节数 %d",n2,unsafe.Sizeof(n2))
  var c2 byte='a'
  fmt.Println("c2=",c2)
  var b=false
  fmt.Println("b=",b)
  var address string="ndjasndqjd1"
  fmt.Println(address)
  var n3 int32=12
  var n4 int64
  var n5 int8
  n4=int64(n3)+20
  n5=int8(n3)+20
  fmt.Println("n4=",n4,"n5=",n5)
  fmt.Sprintf("%d",n4)
  fmt.Sprintf("n4的地址",&n4)
  a :=100
  fmt.Println(a)
  for i :=0;i<=10;i++{
    fmt.Println("hello",i)
  }
  fmt.Println("***********************")
  var num int=9
  for i:=1;i<=num;i++{
    for j:=1;j<=i;j++{
      fmt.Printf("%v * %v=%v \t",j,i,j*i)
    }
    fmt.Println()
  }
  for i:=0;i<4;i++{
    for j:=0;j<10;j++{
      if j==2{
        continue
      }
      fmt.Println("j=",j)
    }
  }
}

整体的语法是对java的一个简化,目前学习进度在面向对象编程一篇,带着问题看Go如何解决并体验并行的快乐

如果你渴望学习新语言,并体验并行多核带来的体验,可以接触下Go,并在github,gitee上找到demo项目运行。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-02-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 赵KK日常技术记录 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档