`
thunderbow
  • 浏览: 156599 次
  • 性别: Icon_minigender_1
  • 来自: beijing
社区版块
存档分类
最新评论

java中&与&&操作符 判断一个数是否为2的整数次幂

阅读更多
& 是按二进制的按位与,即 1 & 1 = 1  1 & 0 = 0  3 & 1 → 11(二进制) & 1 = 1 
&& 是逻辑与,true & &true = true, true & &false = false

 

public class Main{ 
    public static void main(String[] args) { 
         for(int i=2;i<1000;i++){ 
             if((i&(i-1))==0){ 
                 System.out.println(i); 
             } 
         } 
    } 
}
比如4(100)&3(011)那么&操作就是0

&&就不举例

 

分享到:
评论

相关推荐

    java 判断一个数是否为2的整数次幂方法

    在Java编程中,判断一个数是否为2的整数次幂是常见的算法问题,这个问题主要涉及到位运算和二进制的理解。2的整数次幂指的是像2^0(即1),2^1(即2),2^2(即4),2^3(即8)等这样的数字,它们在二进制表示中具有...

    java解惑 PDF版

    在Java中,取余操作符(%)用于计算两个数相除的余数。然而,开发者可能会错误地假定,当涉及到负数时,取余的结果会与期望一致。例如,判断一个整数是否为奇数时,使用`return i % 2 == 1;`可能看似正确,但实际上...

    JAVA解惑 大量java实例 Java程序员阅读

    在Java中,判断一个整数是否为奇数的常见方法是通过取余操作符(%)来实现。例如,判断方法`isOdd(int i)`使用`return i % 2 == 1;`来判断传入的整数`i`是否为奇数。这个方法看起来直观且正确,但在处理负数时会出现...

    Java解惑(中文).pdf

    在Java中,取余操作符(%)用于返回两个数相除的余数。按照定义,对于任何整数`a`和任何非零整数`b`,`(a/b)*b+(a%b)`的值应等于`a`。然而,在实际使用中,需要注意取余操作的结果符号是与被除数(左操作数)一致的...

    《Java程序设计》课程设计报告带有函数功能的计算器设计

    程序首先判断用户的输入是操作数还是操作符,然后根据输入进行相应的处理,包括存储操作数、判断操作符类型、执行计算或转换显示区的字符串为数值。在每次输入后,程序会进行初始化,为下一次输入做好准备。 编码...

    java小程序

    在Java中,我们可以使用循环或递归来判断一个数是否为质数。基本方法包括试除法,即从2到该数的平方根进行遍历,如果能整除则不是质数。 2. **数组求子集**:在数组中找出所有可能的子集,可以使用递归或回溯算法...

    java基础(看一遍即可上手)

    - `do...while`:先执行一次循环体内的代码,然后判断条件是否为真来决定是否继续执行循环体。 #### 四、访问修饰符与封装 Java中的类成员可以使用不同的访问修饰符来限制其可见性和可访问性: - `public`:公共...

    大学Java-Java-JAVA试卷12

    3. **算术运算与变量更新**:"i += i - 1"这样的表达式是Java中的复合赋值操作符,它等价于"i = i + (i - 1)",用于更新变量i的值。 4. **子类声明**:在Java中,定义子类时声明父类名的关键字是"C)extends",如...

    LeetCode9 Palindrome Number

    - 如果异或结果为0,说明所有奇数位置的位都是对称的,此时检查原数是否为1(因为2的n次幂的二进制表示中只有最高位是1,其他都是0),如果是,则原数是回文数;如果不是,继续下一步。 - 将原数与异或结果再次...

    Java面试宝典2014版

    - `==` 操作符用于比较两个对象的引用是否相等,即它们是否指向内存中的同一位置。 - `equals` 方法用于比较两个对象的内容是否相等,它是`Object`类中的一个方法,可以在子类中重写以提供具体的比较逻辑。 #### 12...

    java的String用法类型总结

    - 说明:在使用`Scanner`类读取不同类型的输入(例如先读取整数再读取字符串)时,需要注意每次调用`nextInt()`会消耗掉输入中的空格或换行符,导致下一次调用`nextLine()`无法正确读取数据。解决方法是重新创建`...

    java practice day by day

    7. **位移操作**:Java中的`是左移运算符,将左侧的操作数向左移动指定位数,相当于乘以2的幂次方。例如,`num 意味着将`num`的二进制表示左移3位。同样,`&gt;&gt;`是右移运算符,相当于除以2的幂次方。 8. **Long....

    Java基本函数[定义].pdf

    6. isUnicodeIdentifierStart() 函数:确定给定的字符是否为 Unicode 标注符的第一个有效字符。 这些函数是 Java 编程语言的基本组成部分,提供了许多实用的功能,可以帮助开发者快速实现各种应用程序。

    48-Java知识点 手写HashMap1

    这是因为HashMap的数组长度总是2的幂,所以`(length-1)`的结果是一个二进制数,所有位都是1,与`hash`进行按位与操作可以确保结果落在有效的索引范围内。 `onlyIfAbsent`是一个布尔值,当设置为true时,如果HashMap...

    java面试宝典

    - 在一个`.java`文件中确实可以包含多个类,但是其中只能有一个公共(public)类,并且这个公共类的名称必须与文件名一致。 - **深入理解:** - 这种设计主要是为了简化Java编译器的工作。通过这种规则,Java...

    C语言位操作运算详解.pdf

    仅在某些语言(如Java)中有此操作符,C语言中没有无符号右移。 位运算的实用技巧包括: - **判断奇偶性**: `x & 1`的结果为1则x是奇数,0则x是偶数。 - **检查特定位是否为1**: `n & 0x40`如果结果不为0,则n的第...

    Java程序分析研究报告第1-4章练习题参考答案.doc

    7. 类型转换:右移运算符`&gt;&gt;`将整数向右移动指定的位数,对于正数,相当于除以2的幂次。因此,`x&gt;&gt;1`相当于`73 / 2`,结果是36,选项A正确。 8. 字符串连接与截取:`substring()`方法用于获取字符串的一部分,题目...

Global site tag (gtag.js) - Google Analytics