資料類型
外表
資料類型,英文:data type,喺電腦科學上係某件電腦資料會有嘅一個特性,大致可以理解為係話俾個編譯器或者直譯器知,個設計者打算點樣用呢份資料。
基本概論
[編輯]常見嘅資料類型包括以下呢啲,呢啲資料類型,Python 等嘅好多主流程式語言都會支援。
- 整數
integer:指該件資料表示緊一個整數。 - 浮點數
float:指該件資料表示緊一個可以係小數嘅實數。 - 字符
character:指該件資料表示緊一個文字等非數字嘅符號。 - 布林
Boolean:指該件資料表示緊一個真假值,當中好多時都係真用 1 代表,而假則用 0 代表。
舉個簡化嘅例子,想像依家電腦收到個訊號,00001,若果呢個訊號標明咗係整數資料,噉部電腦就知呢段訊號代表緊 1 呢個數值,但如果個訊號標明咗係布林資料,噉呢段訊號所代表嘅係真確。因此,搞清楚資料類型對電腦嘅正常運作嚟講好重要。
程式語言
[編輯]呢節要加長。 |
睇埋:動態程式語言
喺寫程式嗰陣,每個變數同常數都會有佢嘅資料類型,亦有程式語言係曉自動噉探測件資料嘅類型,例子有 Python。如果用家嘗試將一個類型唔啱嘅數值,加落去一件資料嗰度-例如個程式嘅開頭講明咗 x 呢個變數屬於整數,但程式半路出現 x = "Hello",即係將 x 設做 "Hello" 呢條字串,噉嘅碼,喺多數程式語言中都會搞到個程式出錯[1][2]。
C++
[編輯]喺 C++ 入便,用家設定變數嗰陣,一定要指明個變數係邊種資料類型。一旦定咗類型,就冇得隨便改,編譯器喺程式行之前,會檢查類型係咪正確。
#include <iostream>
#include <string>
int main() {
int myNumber = 10; // 必須指明係 int (整數)
float myFloat = 5.5; // 必須指明係 float (浮點數)
std::string myText = "Hi"; // 必須指明係 string (字串)
// 如果嘗試寫 myNumber = "Hello"; 喺編譯嗰陣就會報錯
return 0;
}
Python
[編輯]相比之下,Python 就係一種動態程式語言。用家寫程式嗰陣唔洗預先宣告資料類型,Python 嘅直譯器會喺程式行到去嗰
# Python 會自動探測資料類型
my_number = 10 # Python 自動當佢係整數 (int)
my_float = 5.5 # Python 自動當佢係浮點數 (float)
my_text = "Hello" # Python 自動當佢係字串 (str)
# 你甚至可以喺程式中途將唔同類型嘅數值加落去同一個變數
my_variable = 100 # 依家係整數
my_variable = "Now I am a string" # 依家變咗字串,Python 唔會報錯
Swift
[編輯]import Foundation
var myNumber: Int = 10 // 必須指明係 Int (整數)
var myFloat: Float = 5.5 // 必須指明係 Float (浮點數)
var myText: String = "Hi" // 必須指明係 String (字串)
// 如果嘗試寫 myNumber = "Hello" 會喺編譯時報錯
Javascript
[編輯]let myNumber = 10; // 不需要指明型別
let myFloat = 5.5;
let myText = "Hi";
// JavaScript 係動態型別,可以咁做:
myNumber = "Hello"; // 唔會即時報錯,但可能導致 bug
Java
[編輯]public class Main {
public static void main(String[] args) {
int myNumber = 10; // 必須指明係 int (整數)
float myFloat = 5.5f; // float 要加 f
String myText = "Hi"; // 必須指明係 String (字串)
// 如果寫 myNumber = "Hello"; 會編譯錯誤
}
}
C
[編輯]#include <stdio.h>
int main() {
int myNumber = 10; // 必須指明係 int (整數)
float myFloat = 5.5; // 必須指明係 float (浮點數)
char myText[] = "Hi"; // 字串用 char array
// 如果寫 myNumber = "Hello"; 會編譯錯誤
return 0;
}
PHP
[編輯]<?php
$myNumber = 10; // 不需要指明型別(整數)
$myFloat = 5.5; // 浮點數
$myText = "Hi"; // 字串
// PHP 係動態型別,可以改變變數類型
$myNumber = "Hello"; // ✅ 唔會報錯,但可能導致 bug
?>