java死循环代码图片 简单死循环代码

为何这Java 程序会死循环

主要你看当i等于3的时候,这个时候greetings[3]已经报了数组越界的错误了,所以不会执行i++,执行到报错了那里了,打印出了数组下标越界异常,所以此时i还是为3,这样就继续循环了,3依然小于4,所以继续取greetings[3],依然不会执行i++

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名与空间、网络空间、营销软件、网站建设、宜州网站维护、网站推广。

所以根本原因是你设置的上限4不对,改为3即可

java中死循环后面的语句是否会执行到的问题

首先,你的while里面,如果什么都不写的话,while是恒成立的,所以永远不会执行i++

但如果你里面有if语句,在某些情况下,它可能会执行到break上面来,跳出while,所以i++写在这里,编译器会认为它没有问题。

if里面是false,while里面是true,你可以想一下,if(false)永远不可能成立,所以这个分支是永远不可能执行到的,不能执行if那么i++也是执行不到。在这种情况下,编译器不会报错。所以会有你说的Dead code.

java循环问题

125/100 因为分子125和分母100都是int.

所以他们相除的结果是也是int, 被四舍五入变成了1.

所以你的p值永远都不会变.

所以while(p200000)永远都不会满足, 导致死循环.

JAVA中关于while循环的用法

1、while关键字的中文意思是“当……的时候”,也就是当条件成立时循环执行对应的代码。while语句是循环语句中基本的结构,语法格式比较简单。

while语句语法格式:

while(循环条件)

循环体;

为了结构清楚,并且使循环体部分可以书写多行代码,一般把循环体处理成代码块,则语法格式变为:

while(循环条件){

循环体;

}

语法说明:和if语句类似,如果不是用代码块的结构,则只有while后面的第一个语句是循环体语句。在该语法中,要求循环条件的类型为boolean类型,指循环成立的条件,循环体部分则是需要重复执行的代码。

执行流程:在执行while语句时,首先判断循环条件,如果循环条件为false,则直接执行while语句后续的代码,如果循环条件为true,则执行循环体代码,然后再判断循环条件,一直到循环条件不成立为止。

下面结合具体的示例来演示一下while语句的基本使用。首先我们来实现一个无限循环,也称死循环,具体代码如下:

while(true){

System.out.println(‘a’);

}

我刚学java不久,下面的代码,看不懂,有没有高手帮我解释一下.

用的IDE是Eclipse么?建议用加断点自己跟踪调试,看看循环里的每一步都干了些什么,如下图:

你的第一段代码:

public static void main(String args[]) {

int layer = 4;

for (int i = 1; i = layer; i++) {

for (int k = 1; k = layer - i; k++) {

System.out.print(" ");

}

for (int j = 1; j = (i - 1) * 2 + 1; j++) {

System.out.print("*");

}

System.out.println();

}

int layer1 = 3;

for (int i = 1; i = layer1; i++) {

for (int k = 1; k = (layer1 - i) + 1; k++) {

System.out.print(" ");

}

//这里j++,j会越来越大,死循环了

for (int j = 5; j = (i + 1) * 2 + 1; j++) {

System.out.print("*");

}

System.out.println();

}

}

}

第二段代码:

public class Hello{

public static void main(String args[]) {

int i1, j1;

for (i1 = 1; i1 = 7; i1++) {

for (j1 = 1; j1 = 7; j1++) {

//循环体空,不知道你想干什么

}

if (j1 + i1 == 5 || j1 - i1 == 3 || i1 - j1 == 3 || i1 + j1 == 11) {

System.out.print("*");

else {

System.out.print("");

}

}

System.out.println();

}

}

第三段代码:

import java.util.Scanner;

public class Hello{

private int maxNum;

public Hello(int maxNum) {

this.maxNum = maxNum;

}

public void print() {

//第一层for循环,打印maxNum行

for (int i = 1; i = maxNum; i++) {

//第二层for循环,每次执行i次

for (int j = 1; j = i; j++) {

System.out.print(j);

System.out.print("*");

System.out.print(i);

System.out.print("=");

System.out.print(i * j);

System.out.print("\t");

}

System.out.println();

}

}

public static void main(String[] args) {

System.out.print("录入一个整数:");

Scanner input = new Scanner(System.in);

// 没有考虑判断输入的是否是整数。

int maxNum = input.nextInt();

new Hello(maxNum).print();

}

}

在网上搜搜Eclipse怎么断点调试,你就可以看到每次循环都干了什么,一一给你解释太麻烦了。


新闻名称:java死循环代码图片 简单死循环代码
网页网址:http://cdiso.cn/article/hjpopd.html

其他资讯