java奇偶
‘壹’ java:为什么按位与运算符可以用来判断奇偶 "(i&1)!=0"
两个操作数分别转换为二进制码之后,对应位置的进制数比较,同为1则返回1。
1的二进制码只有最低位的一位,也就是1,而左边其它的位对应的进制码(不管是0还是1)都要和2的幂运算相乘再想加,肯定是偶数。所以,最低位的进制码决定了这个数的奇偶。
为1则是奇数,0为偶数。
或者,由二进制的计算规则知道,二进制码由余数组成,所以,最后一位也是最后一次相除的余数,为1则是奇数。
‘贰’ 写一个java方法,判断给定的数字是偶数还是奇数。
奇偶数的判定依据是:是否能被2整除。
1、通过字面解释去实现:采用取模(%)的做法:
publicbooleamisOdd(intnum){
returnnum%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则为偶数。
publicbooleamisOdd(intnum){
returnnum&1==1;
}
这种方法不用担心-1这个特殊情况,(在计算机中,负数以其正值的补码形式表达的):
-1 的二进制:
原码:0000 0001
反码:1111 1110
补码:1111 1111
按位与计算得到:0000 0001,结果是1,则可以判断为-1是奇数。
‘叁’ JAVA 奇偶数的判断问题
public class Ji_ou {
public static void main(String[] args)
{int a[]={5,8,7,52,54,102,1523};
System.out.print("这个数组的偶数是:");
for(int i=0;i<a.length;i++){
if(a[i]%2==0)
System.out.print(a[i]);
}
System.out.println();
System.out.print("这个数组的奇数是:");
for(int i=0;i<a.length;i++){
if(a[i]%2!=0) {
System.out.print(a[i]);
}
}
System.out.println();
}
我用记事本写的`不知道对不对`
不对的话还请多包含`
‘肆’ 请问java语言中的奇偶数如何表达
思路:任何数除2的余数有2种情况。
偶数余数为0,奇数余数为1。余数算数运算符为%
有了思路就好办了
你只需要将/改成%就好了
‘伍’ JAVA偶数和奇数问题
int count=0;
for( int i=1;i<101;i++){
if(i%2==0){
count=count+i;
}
}
system.out.println("一百以内偶数之和为:"+count);
-------------------------------------------------------
int count=0;
for( int i=1;i<101;i++){
if(i%2!=0){
count=count+i;
}
}
system.out.println("一百以内奇数之和为:"+count);
‘陆’ java 用if判断奇数还是偶数
import java.util.Scanner;
public class Demo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入数字");
int a=sc.nextInt();
if (a%2==0) {
System.out.println("偶数");
}else{
System.out.println("奇数");
}
}
}
‘柒’ 用JAVA编写如何判断变量X是奇数还是偶数
对2取余为0即是偶数,为1即是奇数
x % 2
‘捌’ java 判断奇偶数
代码如下:
import java.util.Scanner;
public class woo {
public static void main(String args[]) {
Scanner scan =new Scanner(System.in);
System.out.println("输入一个整数");
int a = scan.nextByte();
if(a%2 != 0)
System.out.printf("%d是奇数", a);
else
System.out.printf("%d是偶数", a);
}
}
(8)java奇偶扩展阅读:
在Java核心API中,有许多应用final的例子,例如java.lang.String,整个类都是final的。为类指定final修饰符可以让类不可以被继承,为方法指定final修饰符可以让方法不可以被重写。
如果指定了一个类为final,则该类所有的方法都是final的。Java编译器会寻找机会内联所有的final方法,内联对于提升Java运行效率作用重大,具体参见Java运行期优化。此举能够使性能平均提高50%。
特别是String对象的使用,出现字符串连接时应该使用StringBuilder/StringBuffer代替。由于Java虚拟机不仅要花时间生成对象,以后可能还需要花时间对这些对象进行垃圾回收和处理,因此,生成过多的对象将会给程序的性能带来很大的影响。