JavaSEの基本構文(以下)
序文
このブロガーはCSDNを使用して、ソフトウェア開発と学習の過程で得られ、学んだ経験と知識を記録します。興味のある友人はブロガーをフォローできます。
たぶん一人で歩いている人は非常に速く行くことができますが、一緒に歩いている人々のグループはさらに進むことができます!成長の道でお互いから学びましょう、注目してください!
フォローしてプライベートメッセージブロガー、あなたはJDK1.8中国語版を手に入れることができます!
1.プログラムフロー制御
1。概要
フロー制御ステートメントは、プログラム内の各ステートメントの実行順序を制御するために使用されるステートメントです。ステートメントは、特定の機能を完了することができる小さなロジックモジュールに組み合わせることができます。
2.分類
そのプロセス制御方法は、構造化プログラミングで指定された3つの基本的なプロセス構造を採用しています。
シーケンス構造
プログラムは、判断や途中でジャンプすることなく、上から下に1行ずつ実行されます。分岐構造
条件に基づいてコードのセクションを選択的に実行します。と2つのブランチステートメント
があります。if…else
switch-case
ループ構造
は、ループ条件に従って特定のコードを繰り返し実行します。ループステートメントには、、、、およびの3種類
があります。while
do…while
for
注:JDK1.5にはforeach
、コレクション要素と配列要素を簡単にトラバースするためのループが用意されています。
2.シーケンシャル構造
Javaでメンバー変数を定義するときに、有効な前方参照が使用されます。そのような:
public class Test{
int num1 = 12;
int num2 = num1 + 2;
}
//错误形式:
public class Test{
int num2 = num1 + 2;
int num1 = 12;
}
3.ブランチ構造
1.if-else構造
1.1フォーマット
if
文には3つの形式があります。
1.
if(条件表达式){
执行代码块;
}
2.
if(条件表达式){
执行代码块1;
}else{
执行代码块2;
}
3.
if(条件表达式1){
执行代码块1;
}
else if (条件表达式2){
执行代码块2;
}
……
else{
执行代码块n;
}
1.2使用説明書
⭕条件式はブール式(関係式または論理式)、ブール変数である必要があります。
⭕ステートメントブロックに実行ステートメントが1つしかない場合は、{}のペアを省略できますが、そのままにしておくことをお勧めします。
⭕
if-else
ステートメント構造。必要に応じてネストできます。
⭕
if-else
構造が「多肢選択式」の場合、最後の構造else
はオプションであり、必要に応じて省略できます。
⭕複数の条件が「相互に排他的」な関係にある場合、条件付き判断ステートメントと実行ステートメントの順序は重要ではありません。複数の条件が「包括的」な関係にある場合、「小さい上位と大きい下位/子上位親下位"。
2.スイッチケース構造
2.1フォーマット
switch(表达式){
case 常量1:
语句1;
// break;
case 常量2:
语句2;
// break; … …
case 常量N:
语句N;
// break;
default:
语句;
// break;
}
2.2使用説明書
⭕ (式)の式の値は、次のいずれかのタイプである
switch
必要があります:、、、、、)byte
、。short
char
int
枚举 (jdk 5.0
String (jdk 7.0)
⭕
case
句の値は、変数名や不確定な式の値ではなく、定数である必要があります。
⭕同じステートメントの
switch
すべての句の定数値case
は互いに異なります。
⭕
break
ステートメントはcase
、分岐の実行後にプログラムをswitch
ステートメントブロックからジャンプさせるために使用されます。そうでないbreak
場合、プログラムは最後まで順番に実行されswitch
ます。
⭕
default
句はオプションです。同時に、場所も柔軟です。一致するものがない場合はcase
、を実行しdefault
ます。
2.3例
例1
public class SwitchTest {
public static void main(String args[]) {
int i = 1;
switch (i) {
case 0:
System.out.println("zero");
break;
case 1:
System.out.println("one");
break;
default:
System.out.println("default");
break;
}
}
}
例2
String season = "summer";
switch (season) {
case "spring":
System.out.println("春暖花开");
break;
case "summer":
System.out.println("夏日炎炎");
break;
case "autumn":
System.out.println("秋高气爽");
break;
case "winter":
System.out.println("冬雪皑皑");
break;
default:
System.out.println("季节输入有误");
break;
}
3.switchステートメントとifステートメントの比較
if
ステートメントと同様switch
に、特定のシナリオでどのステートメントを使用する必要がありますか?
⭕判断の具体的な価値が少なく、
byte、short 、char、int、String、枚举
いくつかの種類に適合している場合。両方のステートメントを使用できますが、ステートメントをお勧めしswtich
ます。効率が少し高いからです。
⭕その他の場合:間隔判定の場合、boolean
型判定の結果は、を使用するif
とif
、使用範囲が広くなります。つまり、使用されているものは。switch-case
として書き直すことができますif-else
。反対は成り立たない。
4.環状構造
1。概要
特定の条件が満たされたときに、特定のコードの機能を繰り返し実行します。
2.分類
⭕cycle⭕cycle⭕cycle ___
for
_
_while
_
_do-while
3.構造
(1)初期化部分(init_statement)
(2)ループ条件部分(test_exp)
(3)ループ本体部分(body_statement)
(4)反復部分(alter_statement)
1.forループ
1.1構文形式
for (①初始化部分; ②循环条件部分; ④迭代部分){
③循环体部分;
}
1.2実行プロセス
①-②-③-④-②-③-④-②-③-④-…-②
1.3説明
⭕②ループ条件部分はブール型の式です。値がfalseの場合、ループは終了します。
⭕①初期化の部分では、複数の変数を宣言できますが、それらはコンマで区切られた同じタイプである必要があります。
⭕④コンマで区切って、複数の変数を更新できます。
1.4例
public class ForLoop {
public static void main(String args[]) {
int result = 0;
for (int i = 1; i <= 100; i++) {
result += i;
}
System.out.println("result=" + result);
}
}
2.whileループ
2.1構文形式
①初始化部分 while(②循环条件部分){
③循环体部分;
④迭代部分;
}
2.2実行プロセス
①-②-③-④-②-③-④-②-③-④-…-②
2.3説明
⭕④反復部分の宣言を忘れないように注意してください。そうしないと、ループは終了せず、無限ループになります。
⭕forループとwhileループは相互に変換できます。
2.4例
public class WhileLoop {
public static void main(String args[]) {
int result = 0;
int i = 1;
while (i <= 100) {
result += i; i++;
}
System.out.println("result=" + result);
}
}
3.do-whileループ
3.1構文形式
①初始化部分;
do{
③循环体部分
④迭代部分
}while(②循环条件部分);
3.2実行プロセス
①-③-④-②-③-④-②-③-④-…②
3.3説明
⭕
do-while
ループはループ本体を少なくとも1回実行します。
3.4例
public class DoWhileLoop {
public static void main(String args[]) {
int result = 0, i = 1;
do {
result += i; i++;
} while (i <= 100);
System.out.println("result=" + result);
}
}
注:最も単純な「無限」ループ形式:while(true)
、、for(;;)
無限ループが存在する理由は、ループする回数がわからないため、ループ内の特定の条件に従ってループの終了を制御する必要があるためです。ループ本体。
4.ネストされたループ
⭕ネストされたループは、別のループの本体内にループを配置することによって形成されます。それらの中で、
for ,while ,do…while
両方とも外部循環または内部循環として使用することができます。
⭕本質的に、ネストされたループは、内側のループを外側のループのループ本体として扱うことです。内側のループのループ条件のみがであるfalse
場合、内側のループを完全にジャンプアウトし、外側のループの現在のループを終了して、次のループを開始することができます。
⭕外層のループ数をm回、内層のループ数をn回とすると、実際には内ループ本体をm*n回実行する必要があります。
5.特別なキーワードの使用:中断、続行
5.1休憩
(1)
break
ステートメントは、ステートメントのブロックの実行を終了するために使用されます
{
……
break;
……
}
(2)
break
ステートメントがマルチレベルのネストされたステートメントブロックに表示される場合、ラベルはステートメントブロックのどのレベルを終了するかを示すことができます。
label1: {
……
label2: {
……
label3: {
……
break label2;
……
}
}
}
(3)例
public class BreakTest{
public static void main(String args[]){
for(int i = 0; i<10; i++){
if(i==3)
break;
System.out.println(" i =" + i);
}
System.out.println("Game Over!");
}
}
5.2続行
⭕
continue
はループ構造でのみ使用できます。
⭕continue
ステートメントは、それが配置されているループステートメントブロックの1回の実行をスキップし、次のループに進むために使用されます。
⭕continue
ステートメントがマルチレベルのネストされたループ本体に表示される場合、ラベルを使用して、スキップするループのレベルを示すことができます。
5.3休憩与続行
⭕はステートメントとループ
break
でのみ使用できます。⭕はループステートメントでのみ使用できます。⭕2つの機能は似ていますが、このループを終了すると、このレイヤーのループが終了します。⭕ 、プログラムはその後のステートメントを実行しないため、その後に他のステートメントはありません。⭕ラベル付きステートメントは、ループの先頭の直後に続く必要があります。ラベル付きステートメントは、非ループステートメントの前に使用することはできません。⭕多くの言語には、プログラム内の任意のステートメントに自由に制御を移して実行するステートメントがあります。ただし、プログラムエラーが発生しやすくなります。の合計は異なります。switch
continue
continue
break
break
continue
goto
goto
Java
break
continue
goto
5.4戻り、中断して続行
⭕
return
:ループを終了するために特に使用されるわけではなく、その機能はメソッドを終了することです。メソッドがreturnステートメントに到達すると、メソッドは終了します。⭕との違いは、リターンがいくつのループ層にあるかに関係なく
break
、メソッド全体が直接終了することです。continue
return