目次
演算子演算記号
代入操作
三目运算符
逻辑控制
顺序结构
分支结构
if 分支语句
switch 语句
循环结构
while循环
do…while 循环
for循环
Java 增强 for 循环
break/continue
ホームページ Java &#&チュートリアル Java の基本演算子とロジック制御の詳細な紹介 (例付き)

Java の基本演算子とロジック制御の詳細な紹介 (例付き)

Feb 27, 2019 am 11:01 AM
java

この記事では、Java の基本的な演算子とロジック制御について詳しく説明します (例を示します)。必要な方は参考にしてください。

演算子とロジック制御

演算子

Java の演算子は次のタイプに分類できます:

  1. 演算子

  2. 関係演算子

  3. ビット演算子

  4. 論理演算子

  5. 代入演算子

  6. 三項演算子

演算子演算記号

#*乗算/除算##%--自動インクリメント演算子と自己デクリメント演算子は位置に基づいており、実行順序も異なります。
演算子 説明
追加
- 減算
剰余 (モジュロ)
自動インクリメント
自動デクリメント

    プレフィックス自動インクリメントおよび自動減算メソッド (a,--a): 最初に自動インクリメントまたは自動デクリメント演算を実行し、次に式演算を実行します。
  • サフィックス自動インクリメントおよび自己減算メソッド (a,a--): 最初に式演算を実行し、次に自動インクリメントまたは自己減算演算を実行します。
  • #関係演算子

演算子説明==2 つのオペランドの値が等しいかどうかを確認し、等しい場合、条件は true!=2 つのオペランドの値が等しいかどうかを確認し、値が等しくない場合は条件が true であることを示します>次のことを確認します左側のオペランドの値が右側のオペランドの値より大きいです。そうであれば、条件は true です。<左のオペランドが右のオペランドの値より小さい場合、条件は True>=左のオペランドの値が大きいかどうかを確認します右のオペランドの値以上である場合、条件は true です。<=左のオペランドの値が以下であるかどうかを確認します。右のオペランドの値と等しいか、等しい場合、条件は true ##Bit Operator

Operator説明&そして、対応するビットがすべて 1 の場合、結果は 1 で、それ以外の場合は 0^XOR、対応するビット値が同じ場合、結果は次のようになります。 0、それ以外の場合は 1Negation、ビットごとの否定演算子はオペランドの各ビットを反転します。 0 は 1 になり、1 は 0ビット単位の左シフト演算子になります。左側のオペランドは、右側のオペランドで指定された桁数だけ左にシフトされます。 ビット単位で右シフト操作記号。左側のオペランドを右側のオペランドで指定された桁数だけビット単位で右にシフトしますビット単位で右にシフトしますシフトパディングのゼロ演算子。左側のオペランドの値は、右側のオペランドで指定された桁数だけ右にシフトされ、シフトによって得られた空いた部分はゼロで埋められます。 ##論理演算演算子


\
または、対応するビットがすべて 0 の場合、結果は 0、それ以外の場合は 1

#~

< ;<

#>>
##>>>

#説明

&&論理積。条件は、両方のオペランドが true の場合にのみ true になります##\\! 論理否定。オペランドの論理状態を反転するために使用されます。条件が true の場合、論理 NOT 演算子は false を返します#

論理判断の順序は左から右です。

論理的な判断をする場合、通常のAND(&)、通常のOR(|)、短絡AND(&&)、短絡OR(||)があります。

両者の違いは次のとおりです:

使用普通与、或操作时,所有的判断条件都会执行;

使用短路与运算时,只要有一个判断返回了false,后续的判断就不再执行。

使用短路或操作时,只要有一个判断返回了true,后学的判断就不再执行。
ログイン後にコピー

代入操作




#論理和。 2 つのオペランドのいずれかが true の場合、条件は true


##演算子説明#=# =追加の代入演算子。左オペランドと右オペランドを加算し、それらを左オペランドに代入します-=減算および代入演算子。左オペランドと右オペランドを減算し、左オペランドに代入します。#=乗算演算子と代入演算子。左オペランドと右オペランドを乗算し、左オペランドに代入します。/=除算演算子と代入演算子。左オペランドと右オペランドを除算し、左オペランドに値を代入します(%)=モジュラスと代入演算子。左オペランドと右オペランドをモジュロにして値を代入します。左オペランドを指定します。 左シフト代入演算子、C << = 2 C = C << 2右シフト代入演算子、C > = 2 は C = C > 2# と同等です。 ビットごとの AND 代入演算子、C&=2 は C=C&2^= と同等です。 \ビットごとの OR 代入演算子

単純な代入演算子。右オペランドの値を左オペランドに代入します





##<<=
と同等
>>=
#&=
と同等です。
ビットごとの XOR 代入演算子、C ^ = 2 は C = C ^ 2

=

三目运算符

三目运算符也被称为条件运算符,该运算符有3个操作数,并且需要判断布尔表达式的值。该运算符的主要是决定哪个值应该赋值给变量。表达式如下:

variable x = (expression) ? value if true : value if false
ログイン後にコピー

逻辑控制

程序逻辑主要分为三种逻辑结构:

  1. 顺序结构

  2. 分支结构

  3. 循环结构

顺序结构

代码均是由上至下,由左至右顺序执行。

分支结构

分支结构是一种判断结构,有两类语法支持:if、switch

if 分支语句

此类语句有多种定义形式

  1. if

if(布尔表达式)
{
   //如果布尔表达式为true将执行的语句
}
ログイン後にコピー
  1. if ...else

if(布尔表达式){
   //如果布尔表达式的值为true
}else{
   //如果布尔表达式的值为false
}
ログイン後にコピー
  1. if ...else if ... else

if(布尔表达式 1){
   //如果布尔表达式 1的值为true执行代码
}else if(布尔表达式 2){
   //如果布尔表达式 2的值为true执行代码
}else if(布尔表达式 3){
   //如果布尔表达式 3的值为true执行代码
}else {
   //如果以上布尔表达式都不为true执行代码
}
ログイン後にコピー
  1. 嵌套的 if…else

if(布尔表达式 1){
   ////如果布尔表达式 1的值为true执行代码
   if(布尔表达式 2){
      ////如果布尔表达式 2的值为true执行代码
   }
}
ログイン後にコピー

switch 语句

if的判断支持布尔表达式,switch 语句不支持布尔表达式的判断。
最早只支持整数或者字符判断,jdk1.6支持了枚举判断,jdk1.7支持了String的判断。

语法格式如下:

switch(expression){
    case value :
       //语句
       break; //可选
    case value :
       //语句
       break; //可选
    //你可以有任意数量的case语句
    default : //可选
       //语句
}
ログイン後にコピー

switch case 语句有如下规则:

  • switch 语句中的变量类型可以是:整数、char、枚举、String,同时 case 标签必须为字符串常量或字面量。

  • switch 语句可以拥有多个 case 语句。每个 case 后面跟一个要比较的值和冒号。

  • case 语句中的值的数据类型必须与变量的数据类型相同,而且只能是常量或者字面常量。

  • 当变量的值与 case 语句的值相等时,那么 case 语句之后的语句开始执行,直到 break 语句出现才会跳出 switch 语句。

  • 当遇到 break 语句时,switch 语句终止。程序跳转到 switch 语句后面的语句执行。case 语句不必须要包含 break 语句。如果没有 break 语句出现,程序会继续执行下一条 case 语句,直到出现 break 语句。

  • switch 语句可以包含一个 default 分支,该分支一般是 switch 语句的最后一个分支(可以在任何位置,但建议在最后一个)。default 在没有 case 语句的值和变量值相等的时候执行。default 分支不需要 break 语句。

switch case 执行时,一定会先进行匹配,匹配成功返回当前 case 的值,再根据是否有 break,判断是否继续输出,或是跳出判断。

循环结构

Java中有三种主要的循环结构:

  • while 循环

  • do…while 循环

  • for 循环

while循环

while是最基本的循环,它的结构为:

while( 布尔表达式 ) {
  //循环内容
}
ログイン後にコピー

只要布尔表达式为 true,循环就会一直执行下去。

do…while 循环

对于 while 语句而言,如果不满足条件,则不能进入循环。

do…while 循环和 while 循环相似,不同的是,do…while 循环至少会执行一次。

do {
       //代码语句
}while(布尔表达式);
ログイン後にコピー

注意:布尔表达式在循环体的后面,所以语句块在检测布尔表达式之前已经执行了。 如果布尔表达式的值为 true,则语句块一直执行,直到布尔表达式的值为 false。

for循环

for循环执行的次数是在执行前就确定的。语法格式如下:

for(初始化; 布尔表达式; 更新) {
    //代码语句
}
ログイン後にコピー

关于 for 循环有以下几点说明:

  • 最先执行初始化步骤。可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句。

  • 然后,检测布尔表达式的值。如果为 true,循环体被执行。如果为false,循环终止,开始执行循环体后面的语句。

  • 执行一次循环后,更新循环控制变量。

  • 再次检测布尔表达式。循环执行上面的过程。

Java 增强 for 循环

JDK1.5 引入了一种主要用于数组的增强型 for 循环。
Java 增强 for 循环语法格式如下:

for(声明语句 : 表达式)
{
   //代码句子
}
ログイン後にコピー

声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。

表达式:表达式是要访问的数组、集合,或者是返回值为数组的方法。

demo:

public class Test {
   public static void main(String args[]){
      int [] numbers = {10, 20, 30, 40, 50};
 
      for(int x : numbers ){
         System.out.print( x );
         System.out.print(",");
      }
      System.out.print("\n");
      String [] names ={"James", "Larry", "Tom", "Lacy"};
      for( String name : names ) {
         System.out.print( name );
         System.out.print(",");
      }
   }
}
ログイン後にコピー

break/continue

break主要用在循环语句或者 switch,在switch语句中,用来跳出整个语句块。在循环语句中跳出最里层的循环,并且继续执行该循环下面的语句。

continue适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。

在 for 循环中,continue 语句使程序立即跳转到更新语句。

while または do...while ループでは、プログラムはすぐにブール式の判定文にジャンプします。


以上がJava の基本演算子とロジック制御の詳細な紹介 (例付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Javaの完全数 Javaの完全数 Aug 30, 2024 pm 04:28 PM

Java における完全数のガイド。ここでは、定義、Java で完全数を確認する方法、コード実装の例について説明します。

ジャワのウェカ ジャワのウェカ Aug 30, 2024 pm 04:28 PM

Java の Weka へのガイド。ここでは、weka java の概要、使い方、プラットフォームの種類、利点について例を交えて説明します。

Javaのスミス番号 Javaのスミス番号 Aug 30, 2024 pm 04:28 PM

Java のスミス番号のガイド。ここでは定義、Java でスミス番号を確認する方法について説明します。コード実装の例。

Java Springのインタビューの質問 Java Springのインタビューの質問 Aug 30, 2024 pm 04:29 PM

この記事では、Java Spring の面接で最もよく聞かれる質問とその詳細な回答をまとめました。面接を突破できるように。

Java 8 Stream Foreachから休憩または戻ってきますか? Java 8 Stream Foreachから休憩または戻ってきますか? Feb 07, 2025 pm 12:09 PM

Java 8は、Stream APIを導入し、データ収集を処理する強力で表現力のある方法を提供します。ただし、ストリームを使用する際の一般的な質問は次のとおりです。 従来のループにより、早期の中断やリターンが可能になりますが、StreamのForeachメソッドはこの方法を直接サポートしていません。この記事では、理由を説明し、ストリーム処理システムに早期終了を実装するための代替方法を調査します。 さらに読み取り:JavaストリームAPIの改善 ストリームを理解してください Foreachメソッドは、ストリーム内の各要素で1つの操作を実行する端末操作です。その設計意図はです

Java での日付までのタイムスタンプ Java での日付までのタイムスタンプ Aug 30, 2024 pm 04:28 PM

Java での日付までのタイムスタンプに関するガイド。ここでは、Java でタイムスタンプを日付に変換する方法とその概要について、例とともに説明します。

カプセルの量を見つけるためのJavaプログラム カプセルの量を見つけるためのJavaプログラム Feb 07, 2025 am 11:37 AM

カプセルは3次元の幾何学的図形で、両端にシリンダーと半球で構成されています。カプセルの体積は、シリンダーの体積と両端に半球の体積を追加することで計算できます。このチュートリアルでは、さまざまな方法を使用して、Javaの特定のカプセルの体積を計算する方法について説明します。 カプセルボリュームフォーミュラ カプセルボリュームの式は次のとおりです。 カプセル体積=円筒形の体積2つの半球体積 で、 R:半球の半径。 H:シリンダーの高さ(半球を除く)。 例1 入力 RADIUS = 5ユニット 高さ= 10単位 出力 ボリューム= 1570.8立方ユニット 説明する 式を使用してボリュームを計算します。 ボリューム=π×R2×H(4

未来を創る: まったくの初心者のための Java プログラミング 未来を創る: まったくの初心者のための Java プログラミング Oct 13, 2024 pm 01:32 PM

Java は、初心者と経験豊富な開発者の両方が学習できる人気のあるプログラミング言語です。このチュートリアルは基本的な概念から始まり、高度なトピックに進みます。 Java Development Kit をインストールしたら、簡単な「Hello, World!」プログラムを作成してプログラミングを練習できます。コードを理解したら、コマンド プロンプトを使用してプログラムをコンパイルして実行すると、コンソールに「Hello, World!」と出力されます。 Java の学習はプログラミングの旅の始まりであり、習熟が深まるにつれて、より複雑なアプリケーションを作成できるようになります。

See all articles