Javaの制御ステートメントの場合
1.ループ構造
プログラムには、繰り返し実行する必要のあるコードが常にありますが、ループ構造がないと仮定すると、当然、繰り返し実行する必要のあるコードを繰り返し記述する必要があります。コードは再利用できません。したがって、ほとんどのプログラミング言語はループ構造をサポートしています。将来的には、繰り返し実行する必要のあるコードフラグメントを「ループ本体」に入れ、「カウンター」を組み合わせて、繰り返し実行する必要のあるコードを共同で制御します。
基本的にすべてのプログラミング言語は3種類のループをサポートしています:
- forループ
- whileループ
- do ... whileループ
2.Forループ
1文法構造:
for (初始化表达式 ; 布尔表达式 ;更新表达式) {
循环体:由java语言构成,是需要重复执行的代码片段
}
2 forループの実行プロセス/原理?
2.1初期化式、ブール式、更新式は必要ありません![ただし、2つのセミコロンが必要です]
2.2初期化式が最初に実行され、forループ全体で1回だけ実行されます。
2.3ブール式はtrue / falseである必要があり、他の値にすることはできません。
2.4forの実行プロセス:
1.初期化式が最初に実行され、式は1回だけ実行されます。
2.ブール式の結果がtrueかfalseかを判別します。
- ブール式はtrueです:
1。ループ本体を実行します
2.更新式を実行します
3.ブール式の結果がtrueかfalseかを判別します
ブール式true1
。ループ本体を実行します
2.更新式を実行します
3.決定しますブール式結果はtrueまたはfalse
です。..。- ブール式がfalseであり、
ループが終了します
ループステートメントと条件付き判断ステートメントのネスト[forとifのネスト]
1から100までのすべての奇数を検索します
public class ForTest01
{
public static void main(String[] args){
第一种方法
for(int i = 1;i<=100;i+=2){
System.out.println("奇数-->" + i);
}
第二种方法
for(int i=1;i<=100;i++){
if(i%2 != 0){
System.out.println(i)
}
}
}
}
1から100までのすべての奇数の合計を求めます
public class ForTest02
{
public static void main(String[] args){
int sum=0;
for(int i=1;i<=100;i+=2){
sum+=i;
}
System.out.println("sum=" + sum);
}
3forループはforループをネストすることもできます
内側のループの変数名と外側のループの変数名を同じにすることはできません
forループを使用して、九九の九九を出力します
public class ForTest03
{
public static void main(String[] args){
for(int i=1;i<=9;i++){
for(int j=1;j<=i;j++){
int a=i*j;
System.out.print(i +"*"+j+"="+a );
}
System.out.println(); //换行
//System.out.print("\n");
}
}
}
forループを記述して、1から100までのすべての素数を検索します
素数:素数とも呼ばれ、1とそれ自体で割り切れる数であり、他の数で割り切れない数は素数と呼ばれます。
public class ForTest04 {
public static void main(String[] args) {
for(int i=2;i<=100;i++){
boolean flag=true; //标记i是否能被其他数整除
for(int j=2;j<i;j++){
//此刻i只能被1和本身整除,所以应从2~i-1
if(i%j==0){
flag=false; //如果i能被其他数整除,就跳出循环
break;
}
}
if (flag)
System.out.print(i+" ");
}
}
}