Created
November 25, 2017 09:27
-
-
Save arfan/8512ca1d7b5c1f8e070c3e843eaf2893 to your computer and use it in GitHub Desktop.
go pass struct in function vs java pass object in function
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package main | |
import ( | |
"fmt" | |
) | |
type Orang struct { | |
Umur int | |
Nama string | |
Alamat Alamat | |
} | |
type Alamat struct { | |
Jalan string | |
Kecamatan string | |
Kelurahan string | |
} | |
func buburMerahPutih(o Orang) { | |
o.Nama = "pemudaHarapanBangsa" | |
fmt.Println("dalam fungsi buburMerahPutih ", o) | |
} | |
func pindahDomisili(o Orang) { | |
o.Alamat.Jalan = "warung jati" | |
fmt.Println("dalam fungsi pindahDomisili ", o) | |
} | |
func main() { | |
alamatUdin:= Alamat{ | |
Jalan: "majapahit", | |
Kecamatan: "pancoran", | |
Kelurahan: "petukangan", | |
} | |
udin := Orang{ | |
Umur:15, | |
Nama: "udin", | |
Alamat: alamatUdin, | |
} | |
fmt.Println("dalam fungsi main", udin) | |
buburMerahPutih(udin) | |
fmt.Println("dalam fungsi main", udin) | |
pindahDomisili(udin) | |
fmt.Println("dalam fungsi main", udin) | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Created by arfan on 11/25/2017. | |
*/ | |
class Orang { | |
public int umur; | |
public String nama; | |
public Alamat alamat; | |
@Override | |
public String toString() { | |
return "Orang{" + | |
"umur=" + umur + | |
", nama='" + nama + '\'' + | |
", alamat=" + alamat + | |
'}'; | |
} | |
} | |
class Alamat { | |
public String jalan; | |
public String kecamatan; | |
public String kelurahan; | |
@Override | |
public String toString() { | |
return "Alamat{" + | |
"jalan='" + jalan + '\'' + | |
", kecamatan='" + kecamatan + '\'' + | |
", kelurahan='" + kelurahan + '\'' + | |
'}'; | |
} | |
} | |
public class main { | |
public static void buburMerahPutih(Orang o) { | |
o.nama = "pemudaHarapanBangsa"; | |
System.out.println("dalam fungsi buburMerahPutih "+ o); | |
} | |
public static void pindahDomisili(Orang o) { | |
o.alamat.jalan = "warung jati"; | |
System.out.println("dalam fungsi pindahDomisili "+ o); | |
} | |
public static void main(String args[]) { | |
Alamat alamatUdin = new Alamat(); | |
alamatUdin.jalan = "majapahit"; | |
alamatUdin.kecamatan = "pancoran"; | |
alamatUdin.kelurahan = "petukangan"; | |
Orang udin = new Orang(); | |
udin.umur = 15; | |
udin.nama = "udin"; | |
udin.alamat = alamatUdin; | |
System.out.println("dalam fungsi main "+ udin); | |
buburMerahPutih(udin); | |
System.out.println("dalam fungsi main "+ udin); | |
pindahDomisili(udin); | |
System.out.println("dalam fungsi main "+ udin); | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
result of main.java | |
dalam fungsi main Orang{umur=15, nama='udin', alamat=Alamat{jalan='majapahit', kecamatan='pancoran', kelurahan='petukangan'}} | |
dalam fungsi buburMerahPutih Orang{umur=15, nama='pemudaHarapanBangsa', alamat=Alamat{jalan='majapahit', kecamatan='pancoran', kelurahan='petukangan'}} | |
dalam fungsi main Orang{umur=15, nama='pemudaHarapanBangsa', alamat=Alamat{jalan='majapahit', kecamatan='pancoran', kelurahan='petukangan'}} | |
dalam fungsi pindahDomisili Orang{umur=15, nama='pemudaHarapanBangsa', alamat=Alamat{jalan='warung jati', kecamatan='pancoran', kelurahan='petukangan'}} | |
dalam fungsi main Orang{umur=15, nama='pemudaHarapanBangsa', alamat=Alamat{jalan='warung jati', kecamatan='pancoran', kelurahan='petukangan'}} | |
result of main.go | |
dalam fungsi main {15 udin {majapahit pancoran petukangan}} | |
dalam fungsi buburMerahPutih {15 pemudaHarapanBangsa {majapahit pancoran petukangan}} | |
dalam fungsi main {15 udin {majapahit pancoran petukangan}} | |
dalam fungsi pindahDomisili {15 udin {warung jati pancoran petukangan}} | |
dalam fungsi main {15 udin {majapahit pancoran petukangan}} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment