Both languages have a type representing the logic values, true and false. Java calls the type boolean and uses the names (literals) true and false, whereas Python calls it Boolean and uses True and False. Note that in Python, the values 0 and "" will also be interpreted as false in a condition and all other values will be true, including True, of course.
Python's Boolean operators, and, or, and not have corresponding Java operators &&, || and !.
The comparison operator for numbers are the same as in Python. For built-in types, instead of == in Python, Java uses equals method.
Code Block |
---|
language | java |
---|
title | Strings in Java | Logical Operators in Java |
---|
| boolean x = true;
boolean y = false;
// Output: x and y is false
System.out.println("x and y is " + (x && y));
// Output: x or y is true
System.out.println("x or y is " + (x || y));
// Output: not x is false
System.out.println("not x is " + !x); |
| Code Block |
---|
language | py |
---|
title | Strings Logical Operators in Python |
---|
| |
|
x = True
y = False
# Output: x and y is False
print('x and y is',x and y)
# Output: x or y is True
print('x or y is',x or y)
# Output: not x is False
print('not x is',not x) |
|
Negation is also formed differently between those two programming languagesPython's Boolean operators: and, or, and not are replaced by: &&, || and ! in Java.
Code Block |
---|
language | java |
---|
title | Strings Operators in Java |
---|
| ! (x > 0 && y > 0) || z > 0 ^ w > 0 |
| Code Block |
---|
language | py |
---|
title | Strings Operators in Python |
---|
| |
|
Negation is also formed differently between those two programming languages
not(x > 0 and y > 0) or z > 0 |
|
In Java, most of the comparison operators, >, <, >=, and <=, can be applied only to numerical types, while in Python, the comparison operators can be applied to numbers, strings, and other types of objects, and compare values in some appropriate way (e.g. numeric order, lexical order) where possible. The equality operators, == and !=, can be applied to any object, but when applied to reference types they test for same (different) object rather than same (different) value.
Code Block |
---|
language | java |
---|
title | Negation in Java |
---|
| int x = 10;
int y = 12;
// Output: x > y is false
System.out.println("x > y is " + (x>y));
// Output: x < y is true
System.out.println("x < y is " + (x<y));
// Output: x == y is false
System.out.println("x == y is " + (x==y));
// Output: x != y is true
System.out.println("x != y is " + (x!=y));
// Output: x >= y is false
System.out.println("x >= y is " + (x>=y));
// Output: x <= y is true
System.out.println("x <= y is " + (x<=y)); |
| Code Block |
---|
language | py |
---|
title | Negation Comparison operators in Python |
---|
| x = 10
y = 12
# Output: x > y is False
print('x > y is',x>y)
# Output: x < y is not y True
print('x < y is',x<y)
# Output: x == y is False
print('x == y is',x==y)
# Output: x != y is True
print('x != y is',x!=y)
# Output: x >= y is False
print('x >= y is',x>=y)
# Output: x <= y is True
print('x <= y is',x<=y) |
|
The comparison operators for numbers are the same as in Python. For class types, instead of == in Python, you should use the equals method in Java.