首页 > 技术文章 > 00-JAVA语法基础

Clark-Shao 2020-09-29 21:50 原文

1、

原码为数的二进制数,反码是将其二进制数每一位按位取反。补码则不同,正数的补码是其原码本身,负数的补码是其除符号位以外其他每一位按位取反再加一,符号位不变。

int a=100;

a=a>>2;//a等于25

a=a<<2;//a等于400

a=a|2;//a等于102

a=a^2;//a等于102

a=a&2;//a等于0

a=~a;//a等于-101

Java中的数是采用补码表示的。

2、

public class Test {
  private static int a=200;
  public static void main(String[] args) {
    int a=100;
    System.out.println(a);
  }
}//输出的结果为100

3、

byte:    1字节 -128~127
boolean:1字节 true false(java中不能以0或非0代替)
char:    2字节  ’\u0000‘~‘ ’\uffff ‘(16进制的,换算过来即0~65535)
short:   2字节 -2^15~2^15-1
int :      4字节 -2^31~2^31-1
float:    4字节 -3.403E38~3.403E38
long:    8字节 -2^63~2^63-1
double:8字节 -1.798E308~- 4.9E324
 4、

private enum MyEnum{

   ONE, TWO, THREE

   }

public static void main(String[] args) {

   for(MyEnum value:MyEnum.values()){

    System.out.println(value);

  }

}

运行结果:

ONE

TWO

THREE

遍历还可以MyEnum value:MyEnum.values()

5、

public class Test {
  public static void main(String[] args) {
    System.out.println("0.05+0.01="+(0.05+0.01));
    System.out.println("1.0-0.42="+(1.0-0.42));
    System.out.println("4.015*100="+(4.015*100));
    System.out.println("123.3/100="+(123.3/100));
  }
}

运行结果:

0.05+0.01=0.060000000000000005
1.0-0.42=0.5800000000000001
4.015*100=401.49999999999994
123.3/100=1.2329999999999999

6、

public class Test {
  public static void main(String[] args) {
    int X=100;
    int Y=200;
    System.out.println("X+Y="+X+Y);
    System.out.println(X+Y+"=X+Y");
  }
}

运行结果:

X+Y=100200
300=X+Y

原因:第一个输入前面是字符串,所以后面的X和Y也成了字符串输出了;第二个先输出的是数,所以数先进行加再输出。

 

推荐阅读