Η Java προσφέρει οκτώ βασικούς τύπους δεδομένων και πολυάριθμους σύνθετους τύπους δεδομένων. Αυτοί καθορίζουν ποιες τιμές μπορούν να αποθηκευτούν και να εμφανιστούν σε μια μεταβλητή. Ορισμένοι τύποι δεδομένων εκχωρούνται σε όλες τις μεταβλητές στη Java.

Ποιοι τύποι δεδομένων υπάρχουν στη Java;

Σε κάθε γλώσσα προγραμματισμού, υπάρχουν διάφοροι τύποι δεδομένων που περιέχουν συγκεκριμένα αντικείμενα και καθορισμένες λειτουργίες. Αν και οι επιλογές τύπων δεδομένων που προσφέρουν οι διάφορες γλώσσες συχνά μοιάζουν μεταξύ τους, μερικές φορές υπάρχουν σημαντικές διαφορές. Για παράδειγμα, αν συγκρίνετε τις γλώσσες Python και Java και τους τύπους δεδομένων τους, θα παρατηρήσετε ομοιότητες μεταξύ των δύο, αλλά και πολλές διαφορές που κάνουν τις γλώσσες κατάλληλες για διαφορετικούς τύπους εργασιών.

Η Java χρησιμοποιεί δύο διαφορετικούς τύπους δεδομένων: τους πρωτότυπους και τους σύνθετους. Οι σύνθετοι τύποι δεδομένων ονομάζονται επίσης τύποι αναφοράς. Οι πρωτότυποι και οι σύνθετοι τύποι δεδομένων διαφέρουν ως προς το μέγεθός τους και καθορίζουν ποιες τιμές μπορούν να αποθηκευτούν σε μια μεταβλητή. Ενώ οι πρωτότυποι τύποι δεδομένων μπορούν να αποθηκεύσουν μόνο απλές τιμές, οι τύποι αναφοράς χρησιμοποιούνται για τη δημιουργία πιο σύνθετων δομών και την οργάνωση και επεξεργασία μεγάλων ποσοτήτων δεδομένων.

Αν θέλετε να μάθετε να προγραμματίζετε, είναι σημαντικό όχι μόνο να γνωρίζετε τους διαφορετικούς τύπους δεδομένων, αλλά και πώς να αξιοποιείτε στο έπακρο τον καθένα από αυτούς. Η κατανόηση του πώς να χρησιμοποιείτε καλύτερα τους τύπους δεδομένων δεν είναι μόνο θέμα κατανόησης της λειτουργικότητάς τους, αλλά και του πόση μνήμη χρησιμοποιούν (ή εξοικονομούν).

Τι είναι οι πρωτόγονοι τύποι δεδομένων στη Java;

Υπάρχουν συνολικά οκτώ διαφορετικοί πρωτόγονοι τύποι δεδομένων στη Java, οι οποίοι περιέχουν αυστηρά καθορισμένα εύρη τιμών. Μπορούν να χωριστούν σε τέσσερις κατηγορίες: λογικοί τύποι δεδομένων, ακέραιοι τύποι δεδομένων, τύποι δεδομένων κινητής υποδιαστολής και τύποι δεδομένων χαρακτήρων. Δεν έχουν πρόσθετες ειδικές δυνατότητες και αναφέρονται επίσης ως στοιχειώδεις τύποι δεδομένων. Κάθε τύπος δεδομένων έχει έναν σταθερό αριθμό bit. Θα εξετάσουμε τους πρωτόγονους τύπους δεδομένων με περισσότερες λεπτομέρειες παρακάτω. Η Java χρησιμοποιεί τους ακόλουθους πρωτόγονους τύπους:

  • boolean
  • byte
  • short
  • int ή ακέραιος
  • long
  • float
  • διπλό
  • χαρακτήρας

boolean

Ο τύπος δεδομένωνboolean της Java δεν είναι αριθμητικός τύπος. Προσφέρει μόνο δύο πιθανές τιμές: true και false. Μπορεί να χρησιμοποιηθεί για να προσδιορίσει εάν μια συνθήκη ισχύει (true) ή όχι (false). Είναι ένας λογικός τύπος δεδομένων και η προεπιλεγμένη τιμή του είναι false. Αποτελείται από 1 bit και έχει την ακόλουθη σύνταξη:

boolean booleanVar;
java

byte

byte είναι ένας ακέραιος τύπος δεδομένων που αναπαρίσταται ως τιμή συμπληρώματος δύο με μέγεθος 8 bit ή 1 byte. Χρησιμοποιείται συνήθως για την εξοικονόμηση μνήμης σε μεγαλύτερους πίνακες. Το εύρος των τιμών του κυμαίνεται από -128 έως 127 και η προεπιλεγμένη τιμή του είναι 0. Ακολουθεί η σύνταξή του:

byte byteVar;
java

short

short είναι επίσης ένας από τους ακέραιους τύπους δεδομένων στη Java και χρησιμοποιείται κυρίως για την εξοικονόμηση μνήμης σε μεγαλύτερους πίνακες. Η τιμή του συμπληρώματος του δύο είναι 16 bit ή 2 byte σε μέγεθος και το εύρος τιμών της εκτείνεται από -32768 έως και 32767. Από προεπιλογή, η τιμή της είναι 0. Έτσι χρησιμοποιείται short:

short shortVar
java

int ή ακέραιος αριθμός

int ή ο ακέραιος αριθμός είναι επίσης μια τιμή συμπληρώματος δύο και ένας ακέραιος τύπος δεδομένων με μέγεθος 4 byte ή 32 bit. Το εύρος τιμών του περιλαμβάνει ακέραιους αριθμούς μεταξύ -2147483648 και 2147483647 και η προεπιλεγμένη τιμή του είναι 0. Η σύνταξή του έχει ως εξής:

int intVar
java

long

Ο μεγαλύτερος ακέραιος τύπος δεδομένων είναι long. Αυτό ισχύει πρώτον για το εύρος τιμών του, το οποίο κυμαίνεται μεταξύ -9223372036854775808 και 9223372036854775807, και δεύτερον για το μέγεθός του, το οποίο είναι 8 byte ή 64 bit. Η τιμή του συμπληρώματος του δύο χρησιμοποιείται επομένως εάν οι άλλοι ακέραιοι τύποι δεδομένων δεν είναι επαρκείς. Ωστόσο, απαιτεί επίσης τη μεγαλύτερη μνήμη. Η προεπιλεγμένη τιμή του είναι 0. Αυτή είναι η σύνταξή του:

lomg longVar
java

float

float είναι ένας τύπος δεδομένων κινητής υποδιαστολής και χρησιμοποιείται για την αποθήκευση πραγματικών αριθμών. Έχει μέγεθος 32 bit και συμμορφώνεται με το πρότυπο IEEE 754, το οποίο ορίζει την τυπική αναπαράσταση των δυαδικών και δεκαδικών αριθμών κινητής υποδιαστολής στους υπολογιστές. Η τυπική τιμή του float είναι 0,0 και μπορούν να αναπαρασταθούν έως και επτά δεκαδικά ψηφία στο εύρος τιμών του. Ωστόσο, σε σύγκριση με το double, float δεν είναι τόσο ακριβές και επομένως δεν πρέπει να χρησιμοποιείται για τιμές όπου η ακρίβεια παίζει καθοριστικό ρόλο. Ωστόσο, εάν αυτό δεν ισχύει, μπορείτε να χρησιμοποιήσετε float για να εξοικονομήσετε χώρο. Η σύνταξη για float έχει ως εξής:

float floatVar;
java

double

double είναι περίπου δύο φορές πιο ακριβές από το float και εξυπηρετεί παρόμοιο σκοπό. Έχει μέγεθος 64 bit και μπορεί να αναπαραστήσει έως και 16 δεκαδικά ψηφία. Η προεπιλεγμένη τιμή του είναι επίσης 0,0. Εάν χρειάζεστε τιμές που είναι πιο ακριβείς, θα πρέπει να χρησιμοποιείτε πάντα double, αν και αυτός ο τύπος δεδομένων δεν είναι και τόσο ακριβής. Αν θέλετε να εργαστείτε με απολύτως ακριβείς τιμές, θα πρέπει να χρησιμοποιήσετε την κλάση BigDecimal. Η σύνταξη του double έχει ως εξής:

double doubleVar;
java

char

char είναι ένας τύπος δεδομένων χαρακτήρων. Αποθηκεύει χαρακτήρες με βάση το σύνολο χαρακτήρων Unicode, επιτρέποντας τη μεταφορά σε πολλές διαφορετικές πλατφόρμες. Κάθε χαρακτήρας απαιτεί 2 byte μνήμης. Το εύρος τιμών του αντιστοιχεί στο ASCII (American Standard Code for Information Interchange) και βρίσκεται μεταξύ ‘\u0000’ (δηλ. 0) και ‘\uffff’ (αντιστοιχεί στο 65535). Η προεπιλεγμένη τιμή του char είναι ‘\u0000’ και η σύνταξή του έχει την εξής μορφή:

char charVar
java

Τι είναι οι σύνθετοι τύποι δεδομένων στη Java;

Ο δεύτερος τύπος δεδομένων στη Java είναι οι τύποι αναφοράς, που αναφέρονται επίσης ως σύνθετοι τύποι δεδομένων. Ονομάζονται τύποι αναφοράς επειδή αναφέρονται σε αντικείμενα. Σε αντίθεση με τους πρωτότυπους τύπους δεδομένων, δεν είναι συνήθως προκαθορισμένοι, αλλά καθορίζονται από τον προγραμματιστή (εξαίρεση αποτελεί η συμβολοσειρά). Μπορούν να χρησιμοποιούν μεθόδους και μπορούν επίσης να έχουν την τιμή 0 (με την έννοια του κενού). Ενώ οι πρωτότυποι τύποι δεδομένων ξεκινούν με μικρό γράμμα, οι τύποι αναφοράς ξεκινούν με κεφαλαίο γράμμα. Εδώ, θα ρίξουμε μια ματιά στους πιο σημαντικούς τύπους αναφοράς.

Χορδές

String είναι μια κλάση που μπορεί να χρησιμοποιηθεί για την αναπαράσταση μιας ακολουθίας χαρακτήρων, διακρίνοντας αυτόν τον σύνθετο τύπο δεδομένων από τον πρωτόγονο τύπο δεδομένων char καθώς και από άλλους τύπους δεδομένων. Μια συμβολοσειρά υπάρχει ως αντικείμενο στην κλάση java.lang. Οι διάφορες μέθοδοι της κλάσης String σας επιτρέπουν να εξετάζετε μεμονωμένους χαρακτήρες στη συμβολοσειρά, να συγκρίνετε συμβολοσειρές μεταξύ τους, να αναζητάτε συμβολοσειρές και να αντιγράφετε συμβολοσειρές. Οι συμβολοσειρές προσδιορίζονται με εισαγωγικά. Η σύνταξη αυτού του τύπου αναφοράς έχει την εξής μορφή:

<string_type> <string_variable> = "<string_sequence>";
java

Ακολουθεί ένα παράδειγμα του τρόπου λειτουργίας των συμβολοσειρών:

// How to create a string without a new operator
String a = "This is your new string";
/ / How to create a string with a new operator
String a1 = new string ("This is your new string");
java

Πίνακες

Οι πίνακες χρησιμοποιούνται για την αποθήκευση πολλών τιμών σε μια μεταβλητή, αντί να δημιουργούνται διαφορετικές μεταβλητές για κάθε μεμονωμένη τιμή. Δημιουργούνται χρησιμοποιώντας αγκύλες. Οι αποθηκευμένες τιμές τοποθετούνται σε αγκύλες και διαχωρίζονται με κόμματα. Ακολουθεί η σύνταξη για τους πίνακες:

dataType[] arrayName = {value1, value2, value3,…};
java

Αν θέλετε να δημιουργήσετε έναν πίνακα με συμβολοσειρές, μπορείτε να το κάνετε ως εξής:

String[] colors = {"blue", "red", "yellow", "purple"};
java

Δείτε πώς μπορείτε να δημιουργήσετε έναν πίνακα με ακέραιους αριθμούς:

int[] figures = {5, 10, 15, 20};
java

Μαθήματα

Στη Java, οι κλάσεις είναι τύποι δεδομένων που χρησιμεύουν ως πρότυπο για τη δημιουργία αντικειμένων. Περιέχουν διάφορα στοιχεία, όπως το όνομα της κλάσης, τροποποιητές και ένα σώμα που περικλείεται σε αγκύλες. Ακολουθεί ένα παράδειγμα της μορφής μιας κλάσης στη Java:

public class Main {
	int a = 10;
}
java

Διεπαφές

Στη Java, μια διεπαφή είναι μια αφηρημένη κλάση. Λειτουργεί ως διεπαφή, μέσω της οποίας μια κλάση μπορεί να έχει πρόσβαση σε διάφορες λειτουργίες. Για να γίνει αυτό, όμως, πρέπει πρώτα να τις υλοποιήσει. Οι διεπαφές περιέχουν μόνο σταθερές και αφηρημένες μεθόδους. Η σύνταξή τους έχει την εξής μορφή:

interface {
	abstract methods
}
java

Θα δούμε ένα απλό παράδειγμα για να δείξουμε πώς λειτουργούν οι διεπαφές:

interface Pizza {
	public void ingredientsList();
	public void preparation();
}
class Mushroom implements Pizza {
	public void ingredientsList() {
		System.out.println("mushrooms, tomato sauce, oregano, mozzarella");
}
public void preparation() {
	System.out.println("The pizza will be ready in 15 minutes.");
}
}
class Main {
	public static void main(String[] args) {
		Mushroom myMushroom = new Mushroom();
		myMushroom.ingredientsList();
		myMushroom.preparation();
	}
}
java

Η αντίστοιχη έξοδος από την εντολή Java System.out.println έχει την εξής μορφή:

mushrooms, tomato sauce, oregano, mozzarella
The pizza will be ready in 15 minutes.
java

Αντικείμενα

Στη Java, τα αντικείμενα είναι επίσης ένας σύνθετος τύπος δεδομένων. Τα αντικείμενα είναι περιπτώσεις κλάσεων που μπορούν στη συνέχεια να αλληλεπιδρούν μεταξύ τους χρησιμοποιώντας μεθόδους. Στο παρακάτω παράδειγμα, θα δημιουργήσουμε διάφορα αντικείμενα σε μια κλάση Main:

public class Main {
	int a = 10;
public static void main(String[] args) {
	Main myObj1 = new Main();
	Main myObj2 = new Main();
	System.out.println(myObj1.a);
	System.out.println(myObj2.a);
	}
}
java

Το αποτέλεσμα έχει την εξής μορφή:

10
10
java

Enums

Οι Enums είναι μια ειδική κλάση που σας επιτρέπει να ενσωματώσετε αμετάβλητες σταθερές στον κώδικά σας. Σε αυτές τις μεταβλητές αποδίδονται σταθερές τιμές που δεν μπορούν να αλλάξουν. Αυτός ο τύπος δεδομένων είναι ιδιαίτερα χρήσιμος αν χρειάζεστε μεταβλητές που πρέπει να έχουν μόνο λίγες πιθανές καταστάσεις. Η σύνταξη ενός enum έχει την εξής μορφή:

enum NameOfTheClass {
	VALUE1,
	VALUE2,
	VALUE3
}
java
Go to Main Menu