小编Rad*_*yak的帖子

无符号右移的行为应用于字节变量

考虑以下Java代码片段

byte b=(byte) 0xf1;
byte c=(byte)(b>>4);
byte d=(byte) (b>>>4);
Run Code Online (Sandbox Code Playgroud)

输出:

c=0xff
d=0xff
Run Code Online (Sandbox Code Playgroud)

预期产量:

c=0x0f
Run Code Online (Sandbox Code Playgroud)

怎么样?为b二进制1111 0001 无符号右移之后0000 1111,因此0x0f,但为什么是0xff 怎么了?

java bit-shift

23
推荐指数
2
解决办法
9706
查看次数

谁在java中调用main函数?

public static void main(String[] args) 
{
    boolean t=true;
    System.out.println("Before return");
    if(t) return;
    System.out.println("not execute");
}
Run Code Online (Sandbox Code Playgroud)

在使用上面的代码时,return它应该返回调用main函数的函数.究竟是谁调用了这个main功能?

java

6
推荐指数
2
解决办法
9344
查看次数

在java中创建数组时,new运算符会做什么?

当我们创建一个classtype对象时,new运算符会在运行时分配内存.

myclass obj1 = new myclass();
Run Code Online (Sandbox Code Playgroud)

这里myclass()定义了一个构造函数myclass

int arr1[4] = new int[];
Run Code Online (Sandbox Code Playgroud)

new分配内存但是,int[]这里做了什么?

java arrays memory-management

4
推荐指数
1
解决办法
5772
查看次数

如何将源代码转换为1和0?

计算机除了一个和零之外什么都不懂.但是我想知道如何将源代码或指令集转换成1和0的详细信息.exe文件只包含1和0吗?

compiler-construction binary compilation

3
推荐指数
1
解决办法
5865
查看次数