加强for循环

Nov 24, 2016 pm 03:39 PM

for循环是开界的。它的一般形式为: for(<初始化>; <条件表达式>; <增量>) 语句; 初始化总是一个赋值语句, 它用来给循环控制变量赋初值; 条件表达式是一个关系表达式, 它决定什么时候退出循环; 增量定义循环控制变量每循环一次后 按什么方式变化。这三个部分之间用";"分开。 例如: for(i=1; i<=10; i++) 语句; 上例中先给 " i " 赋初值1, 判断 " i " 是否小于等于10, 若是则执行语句, 之后值增 加1。再重新判断, 直到条件为假, 即i>10时, 结束循环。 

目录 

需要注意的几点 
加强for循环 
PHP中的FOR循环 
展开 
编辑本段 
需要注意的几点 

  1. for循环中语句可以为语句体, 但要用"{"和"}"将参加循环的语句括起来。 
  2. for循环中的"初始化"、"条件表达式"和"增量"都是选择项, 即可以缺省, 但";"不能缺省。省略了初始化, 表示不对循环控制变量赋初值。 省略了条件表达式, 则不做其它处理时便成为死循环。省略了增量, 则不对循环控制变量进行操作, 这时可在语句体中加入修改循环控制变量的语句。 
  3. for循环可以有多层嵌套。 
  例: 
  #include 
  int main(void) 
  { 
  int i, j, k; 
  printf("i j k\n"); 
  for (i=0; i<2; i++) for(j=0; j<2; j++) for(k=0; k<2; k++)
  printf(%d %d %d\n", i, j, k);
  return 0;
  }
  输出结果为: i j k 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
编辑本段
加强for循环

  J2SE 1.5提供了另一种形式的for循环。借助这种形式的for循环,可以用更简单地方式来遍历数组和Collection等类型的对象。本文介绍使用这种循环的具体方式,说明如何自行定义能被这样遍历的类,并解释和这一机制的一些常见问题。
  在Java程序中,要“逐一处理”——或者说,“遍历”——某一个数组或Collection中的元素的时候,一般会使用一个for循环来实现(当然,用其它种类的循环也不是不可以,只是不知道是因为for这个词的长度比较短,还是因为for这个词的含义和这种操作比较配,在这种时候for循环比其它循环常用得多)。
  对于遍历数组,这个循环一般是采取这样的写法:
清单1:遍历数组的传统方式
  /* 建立一个数组 */
  int[] integers = {1, 2, 3, 4};
  /* 开始遍历 */
  for (int j = 0; j < integers.length; j++) {
  int i = integers[j];
  System.out.println(i);
  }
  而对于遍历Collection对象,这个循环则通常是采用这样的形式:
清单2:遍历Collection对象的传统方式
  /* 建立一个Collection */
  String[] strings = {"A", "B", "C", "D"};
  Collection stringList = java.util.Arrays.asList(strings);
  /* 开始遍历 */
  for (Iterator itr = stringList.iterator(); itr.hasNext();) {
  Object str = itr.next();
  System.out.println(str);
  }
  而在Java语言的最新版本——J2SE 1.5中,引入了另一种形式的for循环。借助这种形式的for循环,现在可以用一种更简单地方式来进行遍历的工作。
  1. 第二种for循环
  不严格的说,Java的第二种for循环基本是这样的格式:
  for (循环变量类型 循环变量名称 : 要被遍历的对象) 循环体
  借助这种语法,遍历一个数组的操作就可以采取这样的写法:
清单3:遍历数组的简单方式
  /* 建立一个数组 */
  int[] integers = {1, 2, 3, 4};
  /* 开始遍历 */
  for (int i : integers) {
  System.out.println(i);/* 依次输出“1”、“2”、“3”、“4” */
  }
  这里所用的for循环,会在编译期间被看成是这样的形式:
清单4:遍历数组的简单方式的等价代码
  /* 建立一个数组 */
  int[] integers = {1, 2, 3, 4};
  /* 开始遍历 */
  for (int 变量名甲 = 0; 变量名甲 < integers.length; 变量名甲++) {
  System.out.println(变量名甲);/* 依次输出“1”、“2”、“3”、“4” */
  }
  这里的“变量名甲”是一个由编译器自动生成的不会造成混乱的名字。
  而遍历一个Collection的操作也就可以采用这样的写法:
清单5:遍历Collection的简单方式
  /* 建立一个Collection */
  String[] strings = {"A", "B", "C", "D"};
  Collection list = java.util.Arrays.asList(strings);
  /* 开始遍历 */
  for (Object str : list) {
  System.out.println(str);/* 依次输出“A”、“B”、“C”、“D” */
  }
  这里所用的for循环,则会在编译期间被看成是这样的形式:清单6:遍历Collection的简单方式的等价代码 /* 建立一个Collection */
  String[] strings = {"A", "B", "C", "D"};
  Collection stringList = java.util.Arrays.asList(strings);
  /* 开始遍历 */
  for (Iterator 变量名乙 = list.iterator(); 变量名乙.hasNext();) {
  System.out.println(变量名乙.next());/* 依次输出“A”、“B”、“C”、“D” */
  }
  这里的“变量名乙”也是一个由编译器自动生成的不会造成混乱的名字。
  因为在编译期间,J2SE 1.5的编译器会把这种形式的for循环,看成是对应的传统形式,所以不必担心出现性能方面的问题。
编辑本段
PHP中的FOR循环

    //PHP中FOR循环基本和C语言保持一致,具体如下:
  for($i=1;$i<=100;$i++){
  echo '这是第'.$i.'次';
  }
  //利用FOR循环,可以循环输出简单数组
  $array=Array('0'=>'a0','1'=>'b1','2'=>'c2','d'=>'d3'); 
  for($i=0;$i<=count($array);$i++){
  echo $array[$i];
  }
  //需要注意的是,对于脚标不为数字的数组,建议使用FOREACH循环来遍历数组。
  ?>

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Expliquez les jetons Web JSON (JWT) et leur cas d'utilisation dans les API PHP. Expliquez les jetons Web JSON (JWT) et leur cas d'utilisation dans les API PHP. Apr 05, 2025 am 12:04 AM

JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,

Décrivez les principes solides et comment ils s'appliquent au développement de PHP. Décrivez les principes solides et comment ils s'appliquent au développement de PHP. Apr 03, 2025 am 12:04 AM

L'application du principe solide dans le développement de PHP comprend: 1. Principe de responsabilité unique (SRP): Chaque classe n'est responsable d'une seule fonction. 2. Principe ouvert et ferme (OCP): les changements sont réalisés par extension plutôt que par modification. 3. Principe de substitution de Lisch (LSP): les sous-classes peuvent remplacer les classes de base sans affecter la précision du programme. 4. Principe d'isolement d'interface (ISP): utilisez des interfaces à grain fin pour éviter les dépendances et les méthodes inutilisées. 5. Principe d'inversion de dépendance (DIP): les modules élevés et de bas niveau reposent sur l'abstraction et sont mis en œuvre par injection de dépendance.

Comment définir automatiquement les autorisations d'UnixSocket après le redémarrage du système? Comment définir automatiquement les autorisations d'UnixSocket après le redémarrage du système? Mar 31, 2025 pm 11:54 PM

Comment définir automatiquement les autorisations d'UnixSocket après le redémarrage du système. Chaque fois que le système redémarre, nous devons exécuter la commande suivante pour modifier les autorisations d'UnixSocket: sudo ...

Expliquez le concept de liaison statique tardive en PHP. Expliquez le concept de liaison statique tardive en PHP. Mar 21, 2025 pm 01:33 PM

L'article traite de la liaison statique tardive (LSB) dans PHP, introduite dans PHP 5.3, permettant une résolution d'exécution de la méthode statique nécessite un héritage plus flexible. Problème main: LSB vs polymorphisme traditionnel; Applications pratiques de LSB et perfo potentiel

Comment déboguer le mode CLI dans phpstorm? Comment déboguer le mode CLI dans phpstorm? Apr 01, 2025 pm 02:57 PM

Comment déboguer le mode CLI dans phpstorm? Lors du développement avec PHPStorm, nous devons parfois déboguer PHP en mode interface de ligne de commande (CLI) ...

Comment envoyer une demande post contenant des données JSON à l'aide de la bibliothèque Curl de PHP? Comment envoyer une demande post contenant des données JSON à l'aide de la bibliothèque Curl de PHP? Apr 01, 2025 pm 03:12 PM

Envoyant des données JSON à l'aide de la bibliothèque Curl de PHP dans le développement de PHP, il est souvent nécessaire d'interagir avec les API externes. L'une des façons courantes consiste à utiliser la bibliothèque Curl pour envoyer le post� ...

Caractéristiques de sécurité du cadre: protection contre les vulnérabilités. Caractéristiques de sécurité du cadre: protection contre les vulnérabilités. Mar 28, 2025 pm 05:11 PM

L'article traite des fonctionnalités de sécurité essentielles dans les cadres pour se protéger contre les vulnérabilités, notamment la validation des entrées, l'authentification et les mises à jour régulières.

See all articles