Πώς να εφαρμόσετε την προσθήκη δύο αριθμών στην Java;

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

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



Οι ακόλουθοι δείκτες θα καλυφθούν σε αυτό το άρθρο,



Ας ξεκινήσουμε λοιπόν,

Προσθήκη δύο αριθμών στην Java

Μέθοδος 1

Ας κατανοήσουμε άμεσα αναπτύσσοντας ένα πρόγραμμα στην Java για να εκτυπώσετε την «Προσθήκη δύο αριθμών» στην οθόνη.



Class AddTwoNumbers {public static void main (String [] args) {System.out.println ('Η προσθήκη δύο αριθμών 10 + 20 είναι' + (10 + 20))}}

Παραγωγή

Έξοδος - Προσθήκη δύο αριθμών στην Java - Edureka

Πρέπει να το καταλάβουμε αυτό, εδώ οι αριθμοί που προστίθενται απευθείας λένε 10 + 20 που είναι 30. Αλλά αυτό που λαμβάνουμε αριθμούς από την κονσόλα. Σε αυτήν την περίπτωση οι τιμές θα αποθηκευτούν σε μια μεταβλητή. Όσον αφορά την Java, η μεταβλητή πίνακα String θα αποθηκεύσει αυτούς τους αριθμούς με βάση το ευρετήριό τους.



δημόσια τάξη Main {public static void main (String [] args) {System.out.println ('Προσθήκη δύο αριθμών' + args [0] + '+' + args [1] + 'is' + (args [0 ] + args [1]))}}

Η έξοδος για αυτό θα είναι όπως φαίνεται στην Κονσόλα όταν περνάμε τον ίδιο αριθμό που είναι 10 και 20.

Ε, το αποτέλεσμα που έχουμε εδώ δεν είναι επιθυμητό 30. Θυμηθείτε το String [] υποστηρίζει, κάθε είσοδος που λαμβάνετε από την κονσόλα αντιπροσωπεύεται στο String. Εδώ λοιπόν πρέπει να μετατρέψουμε αυτές τις συμβολοσειρές σε ακέραιο για να υπολογίσουμε την προσθήκη.

δημόσια τάξη Main {public static void main (String [] args) {//System.out.println( 'Προσθήκη δύο αριθμών' + args [0] + '+' + args [1] + 'is' + (args [0] + args [1])) System.out.println ('Προσθήκη δύο αριθμών' + args [0] + '+' + args [1] + 'is' + (Integer.parseInt (args [0] ) + Integer.parseInt (args [1])))}}

Παραγωγή

Τώρα το επιθυμητό αποτέλεσμα είναι αυτό που θέλουμε. Αυτή είναι η προσθήκη του 10 και του 20 είναι 30 αφού το αναλύσουμε από το String στο Integer.

Στη συνέχεια σε αυτό το άρθρο σχετικά με την προσθήκη δύο αριθμών στην Java

Μέθοδος 2

  1. Χρησιμοποιώντας τον φορέα αφαίρεσης: Μπορούμε να χρησιμοποιήσουμε την αφαίρεση για να προσθέσουμε δύο αριθμούς έτσι ώστε να αναιρέσει την αρνητική τιμή και να προκύψει έτσι ως προσθήκη.

δημόσια τάξη AddTwoNumbers {public static int add (int a, int b) {return a - (-b)} public static void main (String [] args) {System.out.println (add (10, 20)) Σύστημα. out.println (προσθήκη (-10, 20))}}

Ούπουτ

30

10

Στη συνέχεια σε αυτό το άρθρο σχετικά με την προσθήκη δύο αριθμών στην Java

Επαναλαμβανόμενο Unary Operator

Αυτό περιλαμβάνει ενώ το loop, η βασική ιδέα πίσω από αυτό είναι να μηδενιστεί η τιμή του πρώτου τελεστή. Και για να συνεχίσουμε να αυξάνουμε τον αντίστοιχο δεύτερο τελεστή με τον ίδιο αριθμό επαναλήψεων. Εξετάστε το παρακάτω παράδειγμα μόνοι σας.

δημόσια τάξη HelloWorld {public static void main (String [] args) {System.out.println ('add' + add (10, 20)) System.out.println ('add' + add (-10, 20)) } δημόσιο στατικό int add (int a, int b) {//System.out.println ('--->' + a + ':' + b) ενώ (a> 0) {//System.out.println ('while a> 0 --->' + a + ':' + b) b ++ a--} ενώ (a<0) { //System.out.println('while a ' + a + ' : ' + b) b-- a++ } //System.out.println('return b--->'+ a +': '+ b) επιστροφή b}}

Ούπουτ

$ javac HelloWorld.java $ java -Xmx128M -Xms16M HelloWorld add 30 add 10

Στη συνέχεια σε αυτό το άρθρο σχετικά με την προσθήκη δύο αριθμών στην Java

Τελεστής Bitwise και Bitshift στην Ιάβα

Μπορούμε επίσης να κάνουμε την προσθήκη δύο ακεραίων χρησιμοποιώντας XOR bitwise operator και μεταφορά μπορεί να ληφθεί από AND operator. Για να προσθέσουμε το συνολικό ποσό πρέπει να χρησιμοποιήσουμε τον υπογεγραμμένο αριστερό χειριστή στροφής. Πώς συμβαίνει αυτό; Ας δούμε πρώτα ένα παράδειγμα.

δημόσια τάξη HelloWorld {public static void main (String [] args) {System.out.println ('Addition using + ve' + addUsingBits (10, 20)) System.out.println ('Addition using -ve' + addUsingBits ( -10, 20)}} δημόσια στατικά int addUsingBits (int a, int b) {while (b! = 0) {int carry = (a & b) a = a ^ bb = μεταφορά<< 1 } return a } }

Παραγωγή

$ javac HelloWorld.java

$ java -Xmx128M -Xms16M HelloWorld

Προσθήκη με χρήση + ve 30

Προσθήκη με χρήση -ve 10

Να θυμάστε πάντα ότι, η λειτουργία XOR χρησιμοποιείται για την αξιολόγηση της προσθήκης δύο bit. Η λειτουργία AND χρησιμοποιείται για την αξιολόγηση της μεταφοράς δύο bit. Ας το αναλύσουμε, έτσι; Πηγαίνοντας από τις τιμές εισόδου ας πάρουμε a = 10 και b = 20 για την πρώτη συνθήκη.

Λειτουργία

Αξιολόγηση έκφρασης

Δυαδικό ισοδύναμο

Δεκαδική τιμή

προς το

10

00001010

10

σι

είκοσι

00010100

είκοσι

ελεγκτής προβολής μοντέλου σε java

ενώ (b! = 0)

αληθής

int μεταφορά = (a & b)

10 & 20

0

0

α = α ^ β

10 ^ 20

00011110

30

b = μεταφορά<< 1

0<< 1

0

0

επιστροφή α

30

00011110

30

Τώρα, ας πάρουμε μια αρνητική ένδειξη -10 για ένα. Ας εξετάσουμε τι συμβαίνει στον παρακάτω πίνακα.Αυτό μας επιτρέπει να βρούμε έως ότου η δεκαδική τιμή της μεταφοράς γίνει αρνητική.

Στη συνέχεια σε αυτό το άρθρο σχετικά με την προσθήκη δύο αριθμών στην Java

Πίνακας αρχικού βρόχου

Λειτουργία

Αξιολόγηση έκφρασης

Δυαδικό ισοδύναμο

Δεκαδική τιμή

προς το

-10

11110110

-10

σι

είκοσι

00010100

είκοσι

ενώ (b! = 0)

αληθής

int μεταφορά = (a & b)

-10 & 20

00010100

είκοσι

α = α ^ β

-10 ^ 20

11100010

-30

b = μεταφορά<< 1

είκοσι<< 1

00101000

40

Βρόχος 1.

Λειτουργία

Αξιολόγηση έκφρασης

Δυαδικό ισοδύναμο

Δεκαδική τιμή

χύτευση διπλά σε int στην Ιάβα

προς το

-30

11100010

-30

σι

40

00101000

40

ενώ (b! = 0)

αληθής

int μεταφορά = (a & b)

-30 & 40

00100000

32

α = α ^ β

-30 ^ 40

11001010

-54

b = μεταφορά<< 1

32<< 1

00101000

64

Και ούτω καθεξής & hellip έως ότου αποδειχθεί ότι ο βρόχος είναι b = 0 για συντομία δεν εμφανίζεται εδώ όλο το αποτέλεσμα. Ο παρακάτω πίνακας αντιπροσωπεύει τον τελευταίο βρόχο σε αυτήν τη λειτουργία.

Λειτουργία

Αξιολόγηση έκφρασης

Δυαδικό ισοδύναμο

Δεκαδική τιμή

προς το

-2147483638

111111111111111111111111111111100000000000000000000000000001010

-2147483638

σι

-2147483648

11111111111111111111111111111110000000000000000000000000000000

-2147483648

ενώ (b! = 0)

αληθής

int μεταφορά = (a & b)

-2147483638 & -2147483648

11111111111111111111111111111110000000000000000000000000000000

-2147483648

α = α ^ β

-2147483638 ^ -2147483648

00001010

10

b = μεταφορά<< 1

-2147483648<< 1

0

0

επιστροφή α

10

00001010

10

Έτσι υπολογίστηκε η προσθήκη. Φτου! τόσο πολύ για τη σκέψη. Απλώς σκεφτείτε αν αυτός ο υπολογισμός έγινε χειροκίνητα από ανθρώπους, κυρίως δυαδικούς υπολογισμούς.

Στη συνέχεια σε αυτό το άρθρο σχετικά με την προσθήκη δύο αριθμών στην Java

Αναδρομή

Μπορούμε επίσης να γράψουμε το παραπάνω πρόγραμμα χρησιμοποιώντας επαναλήψεις. Το μέρος υπολογισμού διαφέρει ελαφρώς ας το σκεφτούμε αυτό για την εργασία για εσάς; Θα δώσω το απόσπασμα εδώ για την επανάληψη και θα προσπαθήσετε να φτιάξετε το δικό σας τραπέζι έτσι ώστε να γνωρίζετε πώς λειτουργεί εσωτερικά. Επίσης, δεν χρειάζεται να κλέψετε όλα αυτά που είναι μόνο για σκοπούς εκπροσώπησης, εκτός εάν είστε ενθουσιασμένοι για τις εσωτερικές εργασίες εδώ.

δημόσιο στατικό int addUsingRecursion (int a, int b) {if (b == 0) επιστρέψτε ένα int sum = a ^ b int carry = (a & b)<< 1 return add(sum, carry) }

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

Δεν έχω αξιολογήσει και δοκιμάσει τη λειτουργία και των δύο σεναρίων για να επιτευχθεί απόδοση. Υποθέτω ότι θα τεθεί σε ισχύ μόνο εάν χτίζετε τον πύραυλο και τον παραδίδετε στο διάστημα.

Έχω εξηγήσει μόνο αριθμούς που σχετίζονται με Integers για συντομία που έχει το δικό του όριο μνήμης. Σας αφήνω να εξερευνήσετε περαιτέρω χρησιμοποιώντας float, double κ.λπ. Να θυμάστε πάντα ότι εάν υπερβείτε την οριακή τιμή των πρωτόγονων τύπων, τότε το αποτέλεσμα θα δείξει διαφορετική απάντηση.

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