java基础——循环结构
2024-10-21 06:41:30
循环结构
while 循环
只要表达式成立,循环就一直持续
我们大多数情况会让循环停下来,我们需要一个让表达式失效的方式,来结束循环
public static void main(String[] args) {
// 输出 1+2+···+100
int i = 0;
int sum =0;
while (i<=100){
sum += i;
i++ ;
System.out.println(i);
}
System.out.println(sum);
}
do...while循环
先执行后判断,所有程序至少执行一次
public static void main(String[] args) {
int i =0;
int sum =0;
do {
sum +=i;
i++;
}while (i<=100);
System.out.println(sum);
}
for循环
for循环执行的前提就是循环的次数是确定的
for循环时最有效最灵活的循环结构
for (初始化;布尔表达式;控制变量更新){
//语句
}
//for死循环
for( ; ; ){
//死循环语句
}
public static void main(String[] args) {
//0-100之间奇数和偶数的和
int oddSum = 0;
int evenSum = 0;
for (int i = 0; i <= 100; i++) {
if (i%2 == 0){
evenSum += i;
}else{
oddSum += i;
}
}
System.out.println("奇数的和:"+oddSum);
System.out.println("偶数的和:"+evenSum);
}
public static void main(String[] args) {
//输出100之内能被5整除的整数,并且每行输出3个
for (int i = 1; i <= 100; i++) {
if (i%5==0){
System.out.print(i+"\t");
}
if (i%(5*3) == 0){
System.out.println();
//System.out.print("\n");
}
}
}
public static void main(String[] args) {
for (int i = 1; i < 10; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(j+"*"+j+"="+(i*j)+"\t");
}
System.out.println();
}
}
增强for循环
java5之后引入了一个主要用于数据或者集合的增强型for循环。
语法如下:
for(声明语句:表达式){
//代码
}
声明语句:新的局部变量,该变量的类型必须和数据元素的类型匹配,其作用域限定在循环语句中,其值与此时数组元素的值相等
表达式:要访问的数组名,或者返回值的方法。
public static void main(String[] args) {
int[] numbers ={10,20,30,40,50};
// 遍历数组的元素 快捷:numbers.for
for(int x:numbers){
System.out.println(x);
}
}
break 和continue
break:不干了,
continue :这次不干了,下一次接着干
public static void main(String[] args) {
// 101-150之间所有的质数
int count = 0;
outer:
for (int i = 100; i < 150; i++) {
for (int j = 2; j < i/2; j++) {
if (i%j == 0){
continue outer;
}
}
System.out.print(i+"\t");
}
}
public static void main(String[] args) {
//输出一个5行的等腰三角$
for (int i=1;i<=5;i++) {
for (int j = 5; j >= i; j--) {
System.out.print(" ");
}
for (int j = 1; j <= 2*i-1; j++) {
System.out.print("$");
}
System.out.println();
}
}
最新文章
- ELF文件
- Daily Scrum02 12.09
- php导出excel封装类
- Linux 笔记总览
- Android编译错误, Ignoring InnerClasses attribute for an anonymous inner class
- HDU 3668 Volume (数学,积分)
- ant+dbunit 导xml到mysql
- 九度OJ 1120 全排列 -- 实现C++STL中next_permutation()
- python笔记之编程风格大比拼
- [ Java面试题 ]基础篇之二
- C#之Socket的简单使用
- springcloud~配置中心的使用
- Python(day1)
- js 文件下载 进度条
- UIKit&#160;框架之WebView
- MySQL keepalived 双主.md
- OpenGL(3)-三角形
- 捋一捋Spring Web的源码思路
- linux prefix
- Mythological VI
热门文章
- node_exporter自定义监控
- 使用ffmpeg 操作音频文件前后部分静音移除.
- HTML5本地存储 localStorage操作使用详解
- 快速了解Web MVC设计模式
- RabbitMQ 入门 (Go) - 6. 数据持久化(上)
- PhpStorm/WebStorm实用技巧
- 通过Dapr实现一个简单的基于.net的微服务电商系统(二)——通讯框架讲解
- [Skill]从零掌握80%的业务查询SQL语句
- 深入剖析共识性算法 Raft
- Linux入门之基本的概念、安装和操作