扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
基础代码,就不打注释了,望采纳
成都创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的澄海网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
public class Test{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("请输入数字");
int i = sc.nextInt();
if(i%2==0){
System.out.println("偶数");
}else{
System.out.println("奇数");
}
if(i0){
System.out.println("正数");
}else if(i0){
System.out.println("负数");
}else{
System.out.println("0");
}
}
}
能够被2整除的整数是偶数,不能被2整除的是奇数。
i % 2 == 1 ? "奇数" : "偶数";
以上程序如果i为负数结果为偶数。
Java取余(%)算法代码如下:
// dividend被除数 divisor 除数public static int remainder(int dividend, int divisor){ return dividend - dividend / divisor * divisor;}
所以当输入 -1时 运算结果是-1,当然不等于1了,所以它被判定为偶数了。
因为改为判断是否是偶数即可
i % 2 == 0 ? "偶数" : "奇数";
Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
奇偶数的判定依据是:是否能被2整除。
1、通过字面解释去实现:采用取模(%)的做法:
public booleam isOdd(int num){
return num % 2 != 0;
}
注意:通过取模判断奇偶数一定要与0进行比较。如果是通过与1进行比较的话会有一个问题:
0 % 2 = 0 ( 0 != 1 ) 是偶数
1 % 2 = 1 ( 1 = 1 ) 是奇数
-1 % 2 = -1 ( -1 != 1 ) 是偶数,很明显是错的
2、利用位运算()能更好的实现
原理是:偶数的二进制末位必然是0,奇数的末尾必然是1。所以只要把一个数与1进行按与运算,运算结果为1则是奇数,0则为偶数。
public booleam isOdd(int num){
return num 1 == 1;
}
这种方法不用担心-1这个特殊情况,(在计算机中,负数以其正值的补码形式表达的):
-1 的二进制:
原码:0000 0001
反码:1111 1110
补码:1111 1111
按位与计算得到:0000 0001,结果是1,则可以判断为-1是奇数。
java中判断变量是奇数还是偶数,我们可以通过这个变量对2进行取余运算所得的结果进行判断。
如果这个变量对2取余结果为0,则表明这个变量是偶数,否则表明这个变量是奇数。
提供一个判断方法吧:
public void evenOrOdd(int x){
if(x%2==0)System.out.println(x+"是偶数");
else System.out.println(x+"是奇数");
}
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流