PythonとJavaの演算子の共通点と相違点を徹底解説!これを読めば迷わない!

こんにちは。ゆうせいです。
今回は、プログラミングに欠かせない「演算子(オペレーター)」についてお話しします。
「演算子って、+ や == とかのこと?」
「PythonとJavaでどう違うの?何が一緒で何が違うの?」
こんな疑問をもつ方のために、PythonとJavaにおける演算子の共通点と違いを、具体例・表・注意点付きでやさしく解説します!
演算子とは?
演算子とは、計算や比較などの操作を行うための記号やキーワードです。
たとえば:
+
(足し算)==
(等しいかどうか)and
/&&
(論理積)
どちらの言語でも、これらを使ってデータ同士の操作や条件判定ができます。
主な演算子の種類と共通点
PythonとJavaには、多くの演算子が共通しています。
種類 | 目的 | 共通演算子 | 例 |
---|---|---|---|
算術演算子 | 足し算・引き算 | + - * / % | a + b 、a % b |
代入演算子 | 値の代入 | = | x = 10 |
比較演算子 | 大小・一致の比較 | == != < > <= >= | a == b 、x >= y |
論理演算子 | 論理式の操作 | Python: and or not Java: `&& | |
複合代入 | 短くまとめる | += -= *= /= | x += 1 → x = x + 1 |
インクリメント | 1増やす | Javaのみ: ++ | i++ (Pythonにはない!) |
相違点①:インクリメント・デクリメント演算子
Javaにはあるけど、Pythonにはないのがこの演算子!
Java:
int i = 1;
i++; // i = i + 1 と同じ
i--; // i = i - 1 と同じ
Python(同じ処理をするには):
i = 1
i += 1
i -= 1
- Pythonでは
i++
や--i
を書くと構文エラーになるので注意!
相違点②:論理演算子の書き方が違う
論理演算 | Python | Java |
---|---|---|
AND(かつ) | and | && |
OR(または) | or | ` |
NOT(否定) | not | ! |
例:
if x > 0 and x < 10:
print("範囲内")
if (x > 0 && x < 10) {
System.out.println("範囲内");
}
意味は同じですが、書き方が全然違うので、間違いやすいポイントです。
相違点③:文字列の加算(連結)
Pythonでは文字列同士を+
で簡単に連結できます。Javaも同様ですが、型に注意が必要です。
name = "ゆう" + "せい"
print(name) # ゆうせい
String name = "ゆう" + "せい";
System.out.println(name); // ゆうせい
ただし、Javaでは数値と文字列を混ぜると自動変換されますが、Pythonはエラーになります!
System.out.println("年齢: " + 25); // 年齢: 25
print("年齢: " + 25) # エラー!intとstrは連結できない
Pythonでは次のように変換が必要です:
print("年齢: " + str(25))
相違点④:同一性の比較
Pythonには、Javaにはないis
演算子があります。
Python:
a = [1, 2]
b = a
print(a is b) # True(同じオブジェクト)
c = [1, 2]
print(a == c) # True(値は同じ)
print(a is c) # False(オブジェクトは別)
Java:
Javaにはis
のような演算子はありませんが、==
は参照の比較、.equals()
は値の比較という点に注意が必要です。
共通点:演算子の優先順位がある!
両言語とも、演算子には優先順位(precedence)があります。
例:
result = 3 + 2 * 4 # → 11(掛け算が先)
int result = 3 + 2 * 4; // → 11
もし優先順位を変えたい場合は、カッコを使って明示します。
result = (3 + 2) * 4 # → 20
int result = (3 + 2) * 4; // → 20
まとめ
比較項目 | 共通点 | 相違点 |
---|---|---|
算術演算子 | + - * / % は両方とも使える | ++ や-- はJavaにしかない |
比較演算子 | == != < > <= >= は同じ | Pythonはis もある |
論理演算子 | 意味は共通 | 書き方が異なる(and vs && など) |
文字列の連結 | + で可能 | Pythonは明示的な型変換が必要 |
優先順位 | 同じようなルール | 基本的には共通 |
次の学習のステップ!
演算子の基礎を押さえたら、以下の内容にも挑戦してみましょう!
- ビット演算子(
& | ^ << >>
)を使ってデータを効率的に扱う方法 - 三項演算子(条件に応じて値を変える短い書き方)
- 演算子のオーバーロード(Python限定)で独自のクラスに演算子を使えるようにする
「この演算子、Pythonだとどう書くの?」「Javaではどう扱う?」などの具体的な質問も歓迎です!
引き続き、一緒に楽しく学んでいきましょう!
セイ・コンサルティング・グループの新人エンジニア研修のメニューへのリンク
投稿者プロフィール

- 代表取締役
-
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。
最新の投稿
山崎講師2025年4月2日f文字列の中の「:>10,」はどういう意味?
山崎講師2025年4月2日プログラミング言語別「メインメソッド」徹底解説|エントリーポイントの違いとその意味とは?
山崎講師2025年4月2日コメントの正しい書き方とは?—読みやすく、伝わるコードにするためのルールとコツ
山崎講師2025年4月2日セミコロンは必要?不要?—言語ごとのルールと本当の意味を徹底解説!