for循环输出空心菱形的一些疑问

weixin_42456871 2018-07-25 09:01:02
public class Diamond {
public static void main(String[] args) {
printHollowRhombus(10);
}
public static void printHollowRhombus(int size) {
if(size % 2 ==0) {
size++;
}

for(int i = 0; i<size/2 + 1; i++) {
for(int j = size/2 + 1; j>i+1; j--) {
System.out.print(" ");
}
for(int j = 0; j<2*i + 1; j++) {
if(j == 0 ||j == 2*i) {
System.out.print("*");
} else {
System.out.print(" ");
}
}
System.out.println("");
}
for(int i=size/2 + 1; i<size; i++) {
for(int j=0; j< i- size/2; j++) {
System.out.print(" ");
}
for(int j=0; j< 2*size - 1 - 2*i; j++) {
if(j==0||j==2*(size-i-1)) {
System.out.print("*");
} else {
System.out.print(" ");
}
}
System.out.println("");
}
}
}

为什么开始判断size为偶数时让其加1,这样就变成奇数了,下面的for循环里size/2不是变成了小数了吗?
请大神解答一下,谢谢~~
...全文
102 1 打赏 收藏 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
java-小学生 2018-07-25
  • 打赏
  • 举报
回复
size/2结果只取整数部分。size%2结果只取余数部分

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧