吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1041|回复: 6
收起左侧

[讨论] 代码意义

[复制链接]
Know惜 发表于 2020-11-10 20:17
本帖最后由 Know惜 于 2020-11-10 20:32 编辑

刚学java
作业要求是:定义一个int类型的变量, 初始化值为123,求这个数的个位,十位,百位分别是多少.
[Java] 纯文本查看 复制代码
//定义一个,类名是VariableDemo04
public class VariableDemo04{
        //定义一个main方法,作为程序的主入口
        public static void main(String[] args){
        //定义一个int类型的变量, 初始化值为123
        int i = 123;
        int ge = i % 10;
        int shi = i / 10 % 10;
        int bai = i / 100 % 10;
        System.out.println(i + "的个位是" + ge + ",十位是" + shi + ",百位是" + bai);        
                }
}

不太明白这段代码为什么这么写
[Java] 纯文本查看 复制代码
int ge = i % 10;int shi = i / 10 % 10;
int bai = i / 100 % 10;

我个人理解为
比如求百位就除以1的百倍,然后在取余
不知道是不是这个意思

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

166818008 发表于 2020-11-10 20:35
你这不是会吗,就单纯的数学逻辑问题,整除,求余
Kotaira 发表于 2020-11-10 20:41
123%10  =123/10 的余数  是3
123/10 %10=  12%10 =2
123/100 %10 =1%10 =1
int 除法是向下取整
usershare 发表于 2020-11-10 20:42
没什么意义,就是利用了下Java的int类型除法规则
aswcy815174418 发表于 2020-11-10 21:02
int 类型会舍弃小数点后面的值,所以你除以10就会去掉个位数,除以100就去掉个位以及十位的数,以此类推,%10也就取个位数
无闻无问 发表于 2020-11-10 21:07
取各数位上的数呗…
kesai 发表于 2020-11-10 21:11
都可以的
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 11:52

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表