今天早上看了个帖子,楼主写了块代码,有一块一直没看懂,就大神帮解释下。
原代码如下:
/**
* 第七题: 编写程序,打印1到100之内的整数,但数字中包含7的要跳过,例如:17、27、71、72
* @author Machel
*/
class Test7{
public static void main(String[] args){
char log = '7';
char[] intArr;
int num = 0;
for(int i=1; i<=100; i++)
{
intArr = Integer.toString(i*100).toCharArray();
for(int j=0; j<3; j++)
{
if(intArr[j]==log)
num++;
}
if(num==0)
{
if(i==100)
System.out.print("["+i+"]");
else
System.out.print("["+i+"]"+",");
}
else
num = 0;
}
}
}
到这结束了。不懂的地方如下:
为什么i*100,j又代表什么。
intArr = Integer.toString(i*100).toCharArray();
for(int j=0; j<3; j++)//这个for循环是为了什么呢
{
if(intArr[j]==log)
num++;
} |
|