# Πώς να χρησιμοποιήσετε τις βασικές λειτουργίες της Java

Υπάρχουν 8 πρωτόγονοι τύποι δεδομένων στη Java, οι οποίοι έχουν όλοι σταθερό μέγεθος και καθορισμένο εύρος τιμών. Χρησιμοποιούνται για τη δημιουργία μεταβλητών και την εκχώρηση σε αυτές μεμονωμένων αριθμών, χαρακτήρων ή λογικών τιμών. Οι 8 πρωτόγονοι τύποι της Java είναι boolean, byte, char, double, float, int, long και short.

## Τι είναι τα πρωτότυπα Java;

Όπως και άλλες γλώσσες προγραμματισμού, η Java έχει διάφορους [τύπους δεδομένων](https://www.ionos.com/el-gr/digitalguide/istoselides/anaptyxi-istoselidon/typoi-dedomenon-java/). Στη Java, αυτοί χωρίζονται σε δύο κατηγορίες. Η πρώτη είναι οι τύποι αναφοράς, οι οποίοι αναφέρονται σε ένα αντικείμενο που μπορεί να οριστεί ελεύθερα, όπως συμβολοσειρές, πίνακες, κλάσεις και διεπαφές. Στη συνέχεια, υπάρχουν οι πρωτότυποι τύποι της Java. Έχουν **σταθερό μέγεθος** που είναι το ίδιο σε όλες τις πλατφόρμες. Έχουν επίσης **τη** δική τους **κλάση περιτύλιξης**, είναι **αμετάβλητοι** και έχουν **σταθερό εύρος τιμών**. Οι πρωτότυποι τύποι της Java χρησιμοποιούνται για τη δημιουργία μεταβλητών για μεμονωμένους αριθμούς, χαρακτήρες ή λογικές τιμές.

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

- Λογικός τύπος δεδομένων (boolean)
- Τύπος δεδομένων ακέραιου αριθμού (byte, short, int και long)
- Τύπος δεδομένων κινητής υποδιαστολής (float και double)
- Τύπος δεδομένων χαρακτήρων (char)

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

<table>
  <thead>
    <tr>
      <th><strong>Τύπος δεδομένων</strong></th>
      <th><strong>Μέγεθος</strong></th>
      <th><strong>Εύρος τιμών</strong></th>
      <th><strong>Προεπιλεγμένη τιμή</strong></th>
      <th><strong>Κλάση περιτύλιξης</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>boolean</td>
      <td>1 bit</td>
      <td>true ή false</td>
      <td>false</td>
      <td>java.lang.Boolean</td>
    </tr>
    <tr>
      <td>byte</td>
      <td>8 bit</td>
      <td>-128 έως 127</td>
      <td>0</td>
      <td>java.lang.Byte</td>
    </tr>
    <tr>
      <td>short</td>
      <td>16 bits</td>
      <td>-32768 έως 32767</td>
      <td>0</td>
      <td>java.lang.Short</td>
    </tr>
    <tr>
      <td>int</td>
      <td>32 bit</td>
      <td>-2147483648 έως 2147483647</td>
      <td>0</td>
      <td>java.lang.Integer</td>
    </tr>
    <tr>
      <td>long</td>
      <td>64 bits</td>
      <td>-9223372036854775808 έως 9223372036854775807</td>
      <td>0</td>
      <td>java.lang.Long</td>
    </tr>
    <tr>
      <td>float</td>
      <td>32 bit</td>
      <td>έως 7 δεκαδικά ψηφία</td>
      <td>0,0</td>
      <td>java.lang.Float</td>
    </tr>
    <tr>
      <td>διπλό</td>
      <td>64 bit</td>
      <td>έως 16 δεκαδικά ψηφία</td>
      <td>0,0</td>
      <td>java.lang.Double</td>
    </tr>
    <tr>
      <td>char</td>
      <td>16 bit</td>
      <td>\*\*’\\u0000’ (δηλ. 0) έως ‘\\uffff’ (αντιστοιχεί σε 65535)</td>
      <td>‘\\u0000’</td>
      <td>java.lang.Character</td>
    </tr>
  </tbody>
</table>

## Πώς να χρησιμοποιήσετε τον πρωτότυπο τύπο boolean της Java

Ένα [Java Boolean](https://www.ionos.com/el-gr/digitalguide/istoselides/anaptyxi-istoselidon/o-typos-dedomenon-boolean-tis-java/) είναι επίσης γνωστό ως τιμή αλήθειας. Είναι το πιο απλό Java primitive, καθώς έχει μόνο δύο πιθανές τιμές: **«true» ή «false».** Χρησιμοποιείται όταν απαιτείται ένας λογικός τελεστής και είναι ο μόνος λογικός τύπος δεδομένων. Στις εκφράσεις, οι δύο πιθανές τιμές του συνήθως αντιπροσωπεύουν μια συνθήκη που είτε πληρούται (true) είτε όχι (false). Εάν δεν εκχωρήσετε μια τιμή σε ένα Boolean, θα έχει την προεπιλεγμένη τιμή false. Το Boolean μπορεί να συνδυαστεί με Boolean τελεστές σε Java όπως [AND και OR](https://www.ionos.com/el-gr/digitalguide/istoselides/anaptyxi-istoselidon/oi-telestes-java-and-kai-or/). Η εκχώρηση μιας τιμής σε ένα Boolean έχει ως εξής:

```java
public class Main {
	public static void main(String[] args) {
		boolean x = true;
		System.out.println(x);
	}
}
```

Εάν χρησιμοποιήσετε την εντολή Java `System.out.prinln` για να αρχικοποιήσετε μια έξοδο, η έξοδος θα έχει την εξής μορφή:

```java
true
```

## byte

Το byte είναι ο μικρότερος τύπος δεδομένων μεταξύ των τύπων δεδομένων ακέραιων αριθμών. Έχει ένα πολύ περιορισμένο εύρος τιμών, δηλαδή από **-128 έως 127**. Ωστόσο, χρησιμοποιεί μόνο 8 bit μνήμης. Στην πραγματικότητα, το όνομά του προέρχεται από το γεγονός ότι 8 bit αποτελούν ένα byte. Εάν εργάζεστε μόνο με ένα πολύ περιορισμένο εύρος τιμών, μπορείτε να δηλώσετε ένα byte ως εξής:

```java
public class Main {
	public static void main(String[] args) {
		byte x = 101;
		System.out.println(x);
	}
}
```

Το αποτέλεσμα έχει την ακόλουθη μορφή:

```java
101
```

## σύντομος

Το short είναι **διπλάσιο σε μέγεθος από το byte**, πράγμα που σημαίνει ότι είναι επίσης ένα από τα λιγότερο συχνά χρησιμοποιούμενα πρωτότυπα Java. Αλλά αν το byte είναι πολύ μικρό και το int πολύ μεγάλο, το short μπορεί να είναι ο τύπος δεδομένων ακέραιου αριθμού που ψάχνετε. Δείτε πώς το δηλώνετε:

```java
public class Main {
	public static void main(String[] args) {
		short x = -27412;
		System.out.println(x);
	}
}
```

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

```java
-27412
```

## int

Το int είναι ο **πιο συχνά χρησιμοποιούμενος** τύπος δεδομένων ακέραιου αριθμού. Έχει πολύ μεγάλο εύρος τιμών και παράλληλα εξοικονομεί χώρο. Το int είναι μια τιμή συμπληρώματος δύο και χρησιμοποιείται συχνά και για άλλους σκοπούς. Δείτε πώς χρησιμοποιείται:

```java
public class Main {
	public static void main(String[] args) {
		int x = 14;
		int y = 3;
		int z = x + y;
		System.out.println(x + " + " + y + " = " + z);
	}
}
```

Το αποτέλεσμα έχει την ακόλουθη μορφή:

```java
14 + 3 = 17
```

## μακρύς

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

```java
public class Main {
	public static void main(String[] args) {
		long x = 47;
		System.out.println(x);
	}
}
```

Ακολουθεί το αποτέλεσμα:

```java
47
```

## επιπλέει

Υπάρχουν δύο πρωτότυπα Java για την αναπαράσταση υποσυνόλων των ρητών αριθμών. Το float είναι ο μικρότερος από τους δύο **τύπους δεδομένων κινητής υποδιαστολής** και χρησιμοποιεί 32 bit. Μπορεί να εμφανίσει έως και 7 δεκαδικά ψηφία. Ωστόσο, δεν είναι πολύ ακριβές και επομένως δεν χρησιμοποιείται πολύ συχνά. Εάν αποφασίσετε να το χρησιμοποιήσετε, μπορείτε να το δηλώσετε ως εξής:

```java
public class Main {
	public static void main(String[] args) {
		float x = 7.22f;
		System.out.println(x);
	}
}
```

Σημειώστε ότι πρέπει να εισάγετε ένα μικρό ή κεφαλαίο «f» μετά τον αριθμό, για να υποδείξετε στον υπολογιστή ότι πρόκειται για float και όχι για double. Το f δεν εμφανίζεται στην έξοδο:

```java
7.22
```

## διπλό

Ο δεύτερος τύπος δεδομένων κινητής υποδιαστολής είναι ο double. Είναι σημαντικά πιο ακριβής από τον float, αλλά και πάλι δεν επιστρέφει απολύτως ακριβή αποτελέσματα. Αν ψάχνετε για μια εναλλακτική λύση, μπορείτε να στραφείτε στην **κλάση BigDecimal**. Αν ο double ταιριάζει στις ανάγκες σας, δείτε πώς μπορείτε να τον δηλώσετε:

```java
public class Main {
	public static void main(String[] args) {
		double x = 7.2252;
		System.out.println(x);
	}
}
```

Σημειώστε ότι δεν υπάρχει επιπλέον γράμμα εδώ. Το αποτέλεσμα έχει την ακόλουθη μορφή:

```java
7.2252
```

## χαρακτήρας

Το char χρησιμοποιείται για την αναπαράσταση χαρακτήρων Unicode. Κυμαίνεται από ‘\\u0000’ έως ‘\\uffff’, δηλαδή από 0 έως 65535. Ο τύπος δεδομένων χαρακτήρα μπορεί να αναπαραστήσει σχεδόν όλους **τους ευρωπαϊκούς και ασιατικούς χαρακτήρες**. Χρησιμοποιεί 16 bit μνήμης. Οι τιμές αυτού του πρωτότυπου Java ορίζονται σε απλά εισαγωγικά. Δείτε πώς εμφανίζεται στον κώδικα:

```java
public class Main {
	public static void main(String[] args) {
		char x = '&';
		System.out.println(x);
	}
}
```

Το αποτέλεσμα έχει την ακόλουθη μορφή:

```java
&
```


This is a markdown version of: [https://www.ionos.com/el-gr/digitalguide/istoselides/anaptyxi-istoselidon/protogeneis-typoi-java/](https://www.ionos.com/el-gr/digitalguide/istoselides/anaptyxi-istoselidon/protogeneis-typoi-java/) for AI/LLM consumption.