JavaRush /בלוג Java /Random-HE /אופרטורים להשוואה ואופרטורים לוגיים. הסתעפות בתוכנית. מפע...
articles
רָמָה

אופרטורים להשוואה ואופרטורים לוגיים. הסתעפות בתוכנית. מפעיל מותנה

פורסם בקבוצה

פעולות לוגיות

ישנם מספר אופרטורים לוגיים בינאריים ואחד אונרי. הטיעונים לכל האופרטורים הללו הם מילוליות לוגיות (קבועים), משתנים לוגיים וביטויים בעלי ערך לוגי.
אופרטורים להשוואה ואופרטורים לוגיים.  הסתעפות בתוכנית.  מפעיל מותנה - 1
מפעילים:
  • !- "שלילה", אופרטור לא ארי, משנה את המשמעות להיפך (היפוך: הופך שקר לאמת, והופך אמת לשקר).
  • &&- "ו" לוגי ("צירוף", "צומת"), פעולה בינארית, מחזירה אמת אם ורק אם שני האופרנדים נכונים.
  • ||- "או" לוגי ("ניתוק", "איחוד"), פעולה בינארית, מחזירה ערך אמיתי כאשר לפחות אחד מהאופרנדים נכון.
לאופרטורים לוגיים יש את העדיפות הבאה: שלילה, צירוף, ניתוק. בדיוק כמו במקרה של אופרטורים אריתמטיים, משתמשים בסוגריים לתיקון קדימות. אם זוג אחד של סוגריים מקונן בתוך זוג אחר של סוגריים, הערך בסוגריים הפנימיים מוערך תחילה. דוגמאות:
boolean a = true;
boolean b;
b = a || true; // b истинно
b = !b; // b ложно
System.out.println(b); // выведет false
a = a || b; // a истинно
boolean c;
c = a && (a||b); //с истинно
System.out.println(c); // выведет true
ב-Java, לא ניתן להמיר סוגים בוליאני ומספרי זה לזה.

מפעילי השוואה

רוב אופרטורי ההשוואה חלים על ערכים מספריים. כל אלו הם אופרטורים בינאריים שיש להם שני ארגומנטים מספריים, אך מחזירים ערך בוליאני.
  • >- מפעיל "יותר".
  • >=- אופרטור "גדול או שווה".
  • <- מפעיל "פחות מ".
  • <=- אופרטור "פחות או שווה".
  • !=- אופרטור "לא שווה".
  • ==- אופרטור שקילות (שוויון).
ניתן להשתמש בשני האופרטורים האחרונים לא רק עבור ערכים מספריים, אלא גם, למשל, עבור ערכים לוגיים. דוגמאות:
boolean m;
m = 5 >= 4; // истина
m = 5 != 5 || false; // ложь
boolean w;
w = m == false; // истина
System.out.println(w); // выведет true
חשוב מאוד לא לבלבל את אופרטור השקילות עם אופרטור ההקצאה. בביטויים המכילים אופרטורים מסוגים שונים, מבצעים תחילה פעולות אריתמטיות, לאחר מכן פעולות השוואה, לאחר מכן פעולות לוגיות, ולבסוף הקצאה.

הצהרת אם מותנית

המפעיל ifמבטיח שהוראה מבוצעת או מדלגת בהתאם לתנאי לוגי מוגדר. אם התנאי נכון, ההוראה מבוצעת.
if (condition) инструкция;
במקום פקודה יכולה להיות פקודה רגילה (פקודה אחת) או פקודה מורכבת (גוש המכיל מספר פקודות, כולל הצהרות מותנות אחרות). דוגמאות (אם מצוין אפס כערכי המשתנים, החלוקה לא תתבצע והתוצאה שלה לא תוצג על המסך):
// Пример 1
int a = 25;
if (a != 0) System.out.println( 100/a );
// Пример 2
int b = 25;
if (b != 0) {
  System.out.println( 100/b );
}
למרות העובדה שהקוד בדוגמה הראשונה נראה קומפקטי יותר, רק בדוגמה השנייה ניתן יהיה לבצע מספר הוראות אם התנאי נכון. למפעיל ifיש פורמט עם חלק נוסף else:
if (condition)
инструкция1;
else
инструкция2;
אם התנאי אמת, מופעלת הוראה פשוטה או מורכבת1 , ואם התנאי הוא שקר, מופעלת הוראה פשוטה או מורכבת2 . דוגמא:
int a = 0;
if (a != 0) System.out.println( 100/a );
else System.out.println("На нуль делить нельзя");
הערות
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION