Disyorkan, 2024

Pilihan Editor

Perbezaan Antara Jenis Pemilihan Pelakon dan Jenis Penukaran

Kedua-dua istilah "jenis pemutus" dan "jenis penukaran" berlaku apabila terdapat keperluan untuk menukar satu jenis data kepada yang lain. Apabila kedua-dua jenis ini bersesuaian dengan satu sama lain, maka penukaran satu jenis kepada yang lain dilakukan secara automatik oleh pengkompil. Walau bagaimanapun terdapat perbezaan asas antara penukaran jenis dan jenis pemutus iaitu jenis penukaran dilakukan "secara automatik" oleh pengkompil sedangkan, jenis pemutus adalah "dilakukan secara eksplisit" oleh pengaturcara. Mari bincangkan perbezaan kedua-dua jenis pemutus dan penukaran dengan bantuan carta perbandingan.

Carta Perbandingan:

Asas untuk PerbandinganJenis CastingTaip Penukaran
MaknaSatu jenis data diberikan kepada pengguna lain, menggunakan operator pemanggil maka disebut "Type Casting".Penukaran satu jenis data kepada yang lain secara automatik oleh pengkompil disebut "Jenis Penukaran".
DimohonJenis pemutus juga boleh digunakan untuk dua jenis data 'tidak serasi'.Penukaran jenis hanya boleh dilaksanakan apabila dua jenis data 'serasi'.
PengendaliUntuk menghantar jenis data kepada yang lain, diperlukan 'operator' () 'pemutus'.Tiada pengendali diperlukan.
Saiz Jenis DataJenis destinasi boleh menjadi lebih kecil daripada jenis sumber.Di sini jenis destinasi mestilah lebih besar daripada jenis sumber.
DilaksanakanIa dilakukan semasa merancang program.Ia dilakukan dengan jelas semasa menyusun.
Jenis penukaran
Menukar penukaran.Pertukaran belian.
Contohint a;
bait b;
...
...
b = (byte) a;
int a = 3;
float b;
b = a; // nilai dalam b = 3.000.

Definisi Jenis Pemutus

Jenis pemutus boleh ditakrifkan sebagai, pemutus satu jenis data kepada jenis data lain, oleh pengaturcara, pada masa reka bentuk program. Aa automatik penukaran satu jenis data kepada yang lain, tidak mungkin sepanjang masa. Mungkin keadaan 'jenis destinasi' lebih kecil daripada 'jenis sumber' jadi, pemrogram perlu menghantar jenis data yang lebih besar kepada jenis data yang lebih kecil menggunakan operator '' () '. Oleh kerana jenis data yang lebih besar dimodulasi kepada jenis data yang lebih kecil, ia juga dipanggil 'penukaran sempit'.

Perisytiharan:

 Destination_type = (target_type) variabel / nilai // jenis sasaran adalah jenis di mana anda ingin menukar jenis sumber itu selalu jenis destinasi. 

Mari kita fahami dengan contohnya. Anda mahu menukar jenis data 'int' kepada 'byte', sekarang, sebagai 'byte' lebih kecil daripada 'int', penukaran jenis tidak dibenarkan. Di sini, kita terpaksa menukar 'int' ke 'bait' dengan menggunakan operator '' () '. Oleh kerana 'int' lebih besar daripada 'bait', saiz 'int' akan dikurangkan kepada julat "int mod byte".

 int a; bait b; ... ... b = (byte) a; 

Apabila 'float' ditukar kepada 'int', saiz apungan akan dipotong, kerana 'int' tidak menyimpan nilai fraksional. Jika saiz jenis destinasi terlalu kecil untuk jenis sumber masuk ke dalam, maka jenis sumber adalah 'julat' jenis destinasi modulo. Pelakon juga boleh digunakan apabila jenis data serasi, amalan yang baik untuk menggunakan pemutus jenis di mana penukaran jenis diperlukan.

Definisi Penukaran Jenis

Jenis penukaran ialah penukaran automatik satu jenis data kepada yang lain apabila diperlukan, dilakukan secara eksplisit oleh pengkompil. Tetapi ada dua syarat yang perlu dipenuhi sebelum penukaran jenis.

  • Jenis sumber dan destinasi mesti serasi.
  • Jenis destinasi mestilah lebih besar daripada jenis sumber.

Kedua-dua syarat ini perlu dipenuhi untuk mencapai penukaran jenis, dan penukaran jenis ini dipanggil 'penukaran penukaran', kerana jenis yang lebih kecil ditukarkan kepada jenis yang lebih besar, pelebaran jenis berlaku. Untuk penukaran ini, jenis angka sebagai 'int', 'float' serasi antara satu sama lain manakala angka untuk char dan boolean atau char ke boolean juga tidak serasi.

Contoh ini akan memberikan pandangan yang lebih baik tentang ini

 int a = 3; float b; b = a; // nilai dalam b = 3.000. 

Di sini, 'int' ditukarkan kepada 'float' yang lebih besar daripada 'int', jadi pelebaran jenis sumber berlaku. Di sini, tiada pengendali casting diperlukan kerana pengkompil akan melakukannya dengan jelas.

Perbezaan utama antara pemilihan jenis dan penukaran

  1. Perbezaan asas yang membezakan jenis pemutus daripada penukaran jenis ialah jenis pemutus adalah penukaran satu jenis yang lain, dilakukan oleh pengaturcara. Sebaliknya, penukaran jenis adalah penukaran satu jenis yang lain, yang dilakukan oleh pengkompil semasa menyusun.
  2. Jenis pemutus boleh digunakan pada datatip yang mungkin tidak serasi antara satu sama lain tetapi penukaran jenis hanya boleh digunakan pada datatip yang serasi antara satu sama lain.
  3. Penukaran jenis satu kepada yang lain dalam pemutus jenis memerlukan pengendali pemutus "()" sementara, penukaran satu jenis data kepada yang lain dalam penukaran jenis tidak memerlukan pengendali apa-apa.
  4. Semasa menukar satu jenis data kepada yang lain dalam pemutus jenis, jenis destinasi boleh menjadi lebih besar atau lebih kecil daripada jenis sumber. Sebaliknya, jenis destinasi mestilah lebih besar daripada jenis sumber penukaran jenis.
  5. Penukaran satu jenis kepada jenis lain dilakukan semasa pengkodan dalam pemutus jenis sedangkan, dalam penukaran jenis, penukaran satu jenis ke satu lagi dilakukan secara eksplisit semasa penyusunan.
  6. Jenis pemutus dipanggil penukaran sempit kerana di sini jenis destinasi boleh menjadi lebih kecil daripada jenis sumber sedangkan, penukaran jenis dipanggil penukaran yang melebar kerana di sini, jenis destinasi mestilah lebih besar daripada jenis sumber.

Kesimpulan:

Ia boleh membuat kesimpulan bahawa jenis penukaran dan jenis pemutus, kedua-duanya melaksanakan tugas menukar satu jenis data kepada yang lain tetapi berbeza dalam arti bahawa pemutus jenis dilakukan oleh pengaturcara, menggunakan operator '' () 'dan penukaran jenis dilakukan oleh pengkompil, dan ia tidak menggunakan mana-mana pengendali.

Top