Java基础回顾

Java基础(20-12-03)

注释

单行注释,多行注释,JavaDos:文档注释

最好避免使用浮点数进行比较

类型转换

强制类型转换:(类型)变量名 高->低

自动转换:低->高

char c1='a';
char c2='中';
System.out.println(c1);
System.out.println((int)c1);//强制类型转换
System.out.println(c2);
System.out.println((int)c2);
转义字符
  • 制表符
  • 换行
  • ......
字符串比较问题
String sa=new String("Hello world!");
String sb=new String("Hello world!");
System.out.println(sa==sb);//false
String sc="Hello world!";
String sd="Hello world!";
System.out.println(sc==sd);//true
JDK7新特性,数字之间可以用下划线分割
int money=10_0000_0000;
关于变量

类变量:static

实例变量:从属于对象,如果不初始化,会有默认值 int:0 0.0;布尔值:默认为false;除了基本类型,其余默认值都是null

局部变量:在方法中,生存周期与方法运行周期等同

Java运算符

***instanceof

二元运算符计算时,byte、short、char计算后自动转换为int型

long、double不变

Math工具类:e.g Math.pow(-,-) 第一个参数是底数,第二个是幂

逻辑运算(短路运算)

int c=5;
boolean d=(c<4)&&(c++<4);
System.out.println(d);
System.out.println(c);//测试逻辑运算&&的运算顺序!

位运算

public static void main(String[] args) {
        /*
        A = 0011 1100
        B = 0000 1101
        ----------------
        A&B = 0000 1100
        A|B = 0011 1101
        A^B = 0011 0001
        ~B = 1111 0010

        2*8=16 2*2*2*2
        位运算效率极高!!!
        << *2
        >> /2

        0000 0000   0
        0000 0001   1
        0000 0010   2
        0000 0011   3
        0000 0100   4
        0000 1000   8
        0001 0000   16
         */
        System.out.println(2<<3);//将1左移三位,16
    }

字符串连接符 +

int a=10;
int b=20;
//字符串连接符 +
System.out.println(""+a+b);//1020
System.out.println(a+b+"");//30

三元运算符

x ? y : z

x==true,执行y,否则执行z

本人学习Java的一片私人空间……
原文地址:https://www.cnblogs.com/none-space/p/14082288.html