Java有好几种循环语句。 for循环是Java的循环之一。

for循环在java中用于重复执行一些语句,直到条件返回false。

for循环有以下三个部分。

初始化

循环条件

自增或自减

for循环的语法:

for (int i = 0; i < 10; i++) {

//循环语句块

}

for (int i = 10; i > 0; i--) {

//循环语句块

}

初始化: int i=0; 或 int i=10; 为初始化语句。初始化语句只在循环开始时执行一次。

循环条件:每次迭代前都会检查循环条件;如符合循环条件,则执行循环语句块;否则退出循环。

自增/自减: i++或i--在每次迭代中都会被执行。

我们来看以下的示例:

通过for循环打印1到5

package org.loop;

public class ForLoop {

public static void main(String[] args) {

for (int i = 1; i < 6; i++) {

System.out.print(" " + i);

}

}

}

程序运行后,结果显示如下:

1 2 3 4 5

如果你仍然对上面的概念感到困惑,让我们通过以下流程图来理解它。

我们来试试只打印奇数:

package org.loop;

public class PrintOdd {

public static void main(String[] args) {

for (int i = 1; i < 6; i++) {

if (i % 2 == 1)

System.out.print(" " + i);

}

}

}

程序运行后,结果显示如下:

1 3 5

练习1:

如果给一整型数组,需要在该数组中找到某一元素。

输入:

{33,46,53,63,42,12}

你需要编写一程序来搜索数组中的元素。如果在数组中找到该元素,则返回“PRESENT”,否则返回“NOT PRESENT”

程序1

package org.loop;

public class FindOne {

public static void main(String[] args) {

FindOne findOne = new FindOne();

int arr[] = { 33, 46, 53, 63, 42, 12 };

System.out.println(findOne.findElementInArr(arr, 53));

}

public String findElementInArr(int arr[], int toBeFound) {

for (int i = 0; i < arr.length; i++) {

if (arr[i] == toBeFound) {

System.out.println(toBeFound + " is present in the array ");

return "PRESENT";

}

}

return "NOT PRESENT";

}

}

53 is present in the array

PRESENT

Java中的无限循环

你需要小心在for循环中的循环条件,否则你可能会创建一个无限循环。

例如:

package org.loop;

public class PrintNum {

public static void main(String[] args) {

for (int i = 10; i > 0; i--) {

System.out.print(" " + i);

}

}

}

10 9 8 7 6 5 4 3 2 1

在上面的示例代码中;如果你将i--改为i++, 上面的for循环将是一个无限循环。

package org.loop;

public class PrintNum {

public static void main(String[] args) {

for (int i = 10; i > 0; i++) {

System.out.print(" " + i);

}

}

}

另外一个无限循环示例:

package org.loop;

public class PrintNum {

public static void main(String[] args) {

for (; ;) {

System.out.print(" + i");

}

}

}

在for循环中使用2个循环变量

如下所示:

package org.loop;

public class ForLoopVariables {

public static void main(String[] args) {

String[] strs = new String[] { "madam", "admin" };

for (String str : strs) {

boolean isPalin = isPalindrome(str);

if (isPalin){

System.out.println("String is Palindrome");

}else{

System.out.println("String is not Palindrome");

}

}

}

static boolean isPalindrome(String str) {

for (int i = 0, j = str.length() - 1; i < str.length() / 2; i++, j--) {

if (str.charAt(i) != str.charAt(j)) {

return false;

}

}

return true;

}

}

程序运行结果如下:

String is Palindrome

String is not Palindrome

java双重for循环流程图_Java的for循环相关推荐

  1. java双重for循环流程图_java 流程执行 循环 foreach循环

    一. if分支 1. 结构  if  else if   else 2.执行原则 if  if  if 结构  会一直去执行()里的判断语句 if else if  else if 结构  只要一条( ...

  2. java双重for循环流程图_JAVA程序逻辑中的循环结构

    在上一篇文章中提到了程序逻辑通过顺序.分支.循环三种结构来实现的,并介绍了分支结构的执行语句,那么今天这篇文章介绍实现程序逻辑的另一种结构--循环结构. 什么是循环结构 循环结构是指在程序设计语言中按 ...

  3. java 循环写法_java的for循环的几种写法

    J2SE 1.5提供了另一种形式的for循环.借助这种形式的for循环,可以用更简单地方式来遍历数组和Collection等类型的对象.本文介绍使用这种循环的具体方式,说明如何自行定义能被这样遍历的类 ...

  4. java中的循环结构_Java中的循环结构进阶

    循环结构进阶 学习本章用到的单词 triangle:三角形 circle:圆形 diamond:钻石 password:密码 row:行.排列 二重循环结构 简单的说:二重循环就是一个循环体内又包含另 ...

  5. java双重for循环 效率_Java优化for循环嵌套的高效率方法

    前几天有人问过我一个问题,就是两个嵌套for循环执行效率的问题,问有什么好的办法替换.当时我想了想,实在想不起来,哎,惭愧!!! 请教了答案,恍然大悟. 比如:两个list中分别装有相同的对象数据. ...

  6. java中审核订单流程图_Java 后端横扫阿里、滴滴、美团总结的面试经验!

    这次面试的公司有一点点多,主要是因为毕业后前两份工作找的都很草率,这次换工作就想着,emm,毕业三年了,该找个工作好好沉淀几年了. 先说下这次面试的结果吧: 到 hr 面的:阿里.美团.滴滴.金山云. ...

  7. java二重循环计数_java的二重循环代码样例

    1.计算三个班的平均分 import java.util.Scanner; public class AvgScore{ public static void main (Sting[] args){ ...

  8. java for循环 写法_java中for循环的6种写法

    packageForLoop;importjava.util.ArrayList;importjava.util.Iterator;importjava.util.List;/*** java中for ...

  9. java拿火柴游戏流程图_Java拿火柴游戏实训报告

    Java拿火柴游戏实训报告 Java 实训报告程序名:拿火柴游戏姓名: 龙宇 学号: 2010221062 班级: 计应 101 班指导教师: 郑晓东时间: 2011.12.31一. 程序功能介绍火柴 ...

最新文章

  1. 【c语言】输入两个数,交换这两个数后,再输出
  2. OpenCV Laplacian算子
  3. (连通图 模板题 无向图求桥)Critical Links -- UVA -- 796
  4. android+动画+锯齿,Android当中的防锯齿(Bitmap Canvas )
  5. 8口网管型工业以太网交换机产品性能介绍
  6. 互掐盗播风云再起 三大视频网站存和解可能
  7. Javascript实现最简跨平台面向对象拖拽
  8. jquery.cookie.js
  9. Android开发(二十四)——数据存储SharePreference、SQLite、File、ContentProvider
  10. phpstorm 快捷键2
  11. android仿winphone进度指示器的实现
  12. sigar 网络 java_使用Sigar获取服务器内存、IP、CPU、IO、MAC地址、操作系统等信息...
  13. .Net·使用ILSpy反编译exe或dll文件保存为项目结构
  14. 小型网络综合设计 (利用交换机实现不同VLAN之间相互通信)
  15. 计算机网络应用基础心得体会,计算机网络技术学习心得体会
  16. 入门级蓝牙遥控小车制作教程
  17. ipad计算机功能,ipad功能有哪些 ipad功能介绍
  18. Linux-系统管理10-服务器RAID及配置实战
  19. 香港科技大学数据建模硕士学位项目(MSc DDM)武汉站宣讲会通知(Mix Mode 线上+线下同步进行)
  20. 导出excel,sheetName名字乱码

热门文章

  1. 基于三种机器学习模型的岩爆类型预测及Python实现
  2. 微信小程序实现分享视频给好友
  3. paddle lenet5网络搭建
  4. LeetCode 剑指Offer 13 机器人的运动范围
  5. 中国点胶机行业市场投资现状与竞争发展策略分析报告2022-2028年版
  6. [APIO2015] 雅加达的摩天楼
  7. STM32F7 LTDC快速切换(重载)图层画面撕裂问题解决
  8. java实现第五届蓝桥杯LOG大侠
  9. java http url xss,XSS简介
  10. 什么是SpringCloud?可以用于干什么?