java学习第二天

java学习第二天

01. 注释

单行注释 //

多行注释

文本注释

02. 标识符

关键字

标识符注意点

开头

字母

大小写

03. 数据类型

强类型语言

弱类型语言

java的数据类型分为两大类

· 基本类型

· 引用类型

· java的数据类型分为两大类

基本类型

引用类型

八大基本数据类型

int

byte

short

long

浮点数

float 有限的 离散的 舍入误差 大约 接近但不等于

double

最好完全使用浮点数进行比较

字符类型

char

字符串

String

布尔

04. 什么是字节

整数拓展

··· 进制 |二进制|十进制|八进制|十六进制

浮点数

浮点数扩展 ? 银行业务怎么表示? 钱 ?

BigDecimal 数学工具类

字符拓展

所有字符的本质还是数字

编码 Unicode 表 2字节 65536 Excel 2^16

U0000 - UFFFF

转义字符

\t 制表符

\n 换行

对象 从内存分析

布尔值拓展

05.类型转换

运算中,不同类型的数据先转化为同一类型,然后进行运算

byte,short , char -->int -->long -->float --double 

强制转化 由低到高

自动转化 由高到低

注意

  1. 不能对布尔值进行转换

  2. 不能把对象类型转换成不相干的类型

  3. 在把高容量转换为低容量的时候,强制转换

  4. 转换的时候可能存在内存溢出,或精度问题

操作比较大时,注意溢出问题

JDK7新特性,数字之间可以用下划线进行分割

06.变量

public class Dome08 {
    public static void main(String[] args) {
        int money = 10_0000_0000 ;
        int years = 20 ;
        //int total1 = money * years ; //在计算的时候就已经溢出了,默认是int , 转换之前就已经存在问题了
        long total2 = money * ((long)years) ;//先把数转换成long

       // System.out.println(total1);
        System.out.println(total2);
    }
}

07.作用域

public class Variable{
    static int allClicks = 0;  //类变量
    String str = "Hello , world !" ; //实例变量
    
    public void method(){
        int i = 0 ; //局部变量
    }
}

变量的命名规范

  • 所有变量、方法 、类名:见名知意

  • 类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词以外,后面的单词首字母大写 lastName

  • 局部变量:首字母小写和驼峰原则

  • 常量:大写字母和下划线:MAX_VALUE

  • 类名:首字母大写和驼峰原则:Man , GoodMan

  • 方法名:首字母小写和驼峰原则:run(),runRun()

    所以这些都是啥?

    我知道变量,但是不知道类成员变量,局部变量,常量,类名,方法名???

08.java语言支持的运算符

算术运算符:

赋值运算符

关系运算符

结果为false or ture

逻辑运算符

位运算符

条件运算符

扩展赋值运算符

package operator;

public class Dome01 {
    public static void main(String[] args) {
        int a = 10 ;
        int b = 20 ;
        int c = 25 ;
        int d = 25 ;

        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/(double)b);

    }
}

数据类型,由低随高

package operator;

public class Dome02 {
    public static void main(String[] args) {
        long a = 12351251554651L ;
        int  b = 123 ;
        short c = 19 ;
        byte d = 8 ;

        System.out.println(a+b+c+d);//long 
        System.out.println(b+c+d);//int
        System.out.println(c+d);//int
    }
}

自增 , 自减 、一元运算符的逻辑梳理

package operator;

public class Dome03 {
    public static void main(String[] args) {
        //自增、自减、一元运算符
        int a = 3 ;
        
        System.out.println(a);

        int b = a++ ;
        //先将a=3的值赋给b, 然后a在增加一
        //此时b=3 , a=4

        System.out.println(a);

        int c = ++a ;
        //a先自增1 ,然后复制给c
        //此时 a = 5 , c = 5 

        System.out.println(a);
        System.out.println(b);
        System.out.println(c);

        double pow = Math.pow( 2 , 3 );
        System.out.println(pow);

    }

}

逻辑运算符梳理
package operator;

//逻辑运算符
public class Dome04 {
    public static void main(String[] args) {
        //与(and) 或(or) 非(取反)
        boolean a = true ;
        boolean b = false;

        System.out.println("a && b:"+(a&&b));//逻辑与运算:两个变量都为真,结果才为ture
        System.out.println("a || b:"+(a||b));//逻辑或运算:有一个变量为真,结果为ture
        System.out.println("!(a && b):"+!(a&&b));//如果为真则变为假,如果为假则变为真,只要有一个变量为假则为真,两个变量都为真则为假。
        System.out.println("=================================================================");

        //短路运算
        int c = 5 ;
        boolean d = (c<4)&&(c++<4);
        System.out.println(d);
        System.out.println(c);
        //与运算的第一个判断语句为假,则运算终止
        //输出 d的值为false c的值为5
        System.out.println("=================================================================");
        
        int n = 5 ;
        boolean m = (n>4)&&(n++<4);
        System.out.println(n);
        System.out.println(m);
        //与运算的第一个判断语句为真,执行第二个判断语句
        //输出结果m的值为false, n的值为6
        System.out.println("=================================================================");
        
        int e = 6 ;
        boolean f = (e<4)||(e++<4);
        System.out.println(e);
        System.out.println(f);
        //非运算的第一个判断语句为假,继续执行第二个判断语句仍为假,
        //输出结果f的值为false ,e的值为7 


    }
}

扩展运算符

package operator;

public class Dome06 {
    public static void main(String[] args) {
        int a = 10 ;
        int b = 20 ;

        a += b ; //a = a+b;

        System.out.println(a);

        a -= b ; //a = a-b;

        System.out.println(a);

        //字符串连接 + , String
        System.out.println(""+a+b);
        //结果为1020 ,字符串后连接
        System.out.println(a+b+"");
        //字符串前,正常加减
    }
}

三元运算符

package operator;
//三元运算符

public class Dome07 {
    public static void main(String[] args) {
        // x ? y : z
        //如果判断语句X为真,则执行y, 否则执行z

        int score = 80;
        String type = score < 60  ? "不及格" : "及格";//必须掌握三元运算符
        System.out.println(type);

    }
}

注意输入的符号是否是英文符号

运算符的优先级

09.包机制

  • 为了更好地组织类,java提供了包机制,用于区别类名的命名空间

  • 包语句的语法格式为:

    package pkg1[.pkg2[.pkg3]]
    
  • 一般利用公司域名作为包名

  • 为了能够使用一个包的成员,需要在就AVAV程序中名曲导入该包,使用“import”语句

    import package[.package2...].(classname|*);
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值