Go vs Java No.123

Because of my sudden fantasy , i try to tell you guys some technological infos but results in vary rare read counting. Well , this time i try to tell you the difference between Java and Go.I am not caring whether you're reading or not.


0、Hello World

Java

package main.java;
public class HelloWorld {
   public static void main(String[] args){
       System.out.println("HelloWorld");
   }
}

Any function declared like this can be recognized as a executable Java class.A function named main.It must match the following conditions.

static & void & main & args

In human terms,it must be declared as static and with void result value and  with named main and with only one argument  and it's type is String[] at the same time.

Go


package main
import "fmt"
func main(){
   fmt.Println("HelloWorld!")
}

Now let's focus on Go side ,  it only requires you to put the Go file  in a package named main , with a non-parameter function named main.


1、variable declaration

Java


int param = 0;
int param;

In Java , just declaration a variable with type before the variable name. As for the value ,  it depends on you.

Go


var a int;
var b int = 1;
c := 1;

In Go , we use var to declare a variable . In the declaration setp , default value or null value is both acceptable . You can also make the compiler help you to infer the type of variable with := .

2、condition selection

Java

if (true) {
} else if (false) {
} else {
}

Write your condition in brackets.

Go

if true{
}else if false{
}else{
}

Write your condition with no brackets.nothing more to say

3、for loop

Java


for(int k = 0 ; k < 10 ;k++){
}

A Java type loop contains a variable Initialization , a break condition and a step variable handling

Go


for k := 0 ; k < 10 ; k++ {
}

A Go type loop , it is just the same as Java ,but with no brackets

4、multitask

Java

new Thread((()->{
 System.out.println("banana");
})).start();

In Java , We handle multitask with thread , just create a thread with a class implementing  a interface named Runable, and then start it.

Go

go func() {
 fmt.Println("banana");
}();

In Go , we use  'go' to run a coroutine to implement multitasking . You can define a named function and then 'go' it . you can use anonymous function as well . both of them can make it works.



end.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值