一、初始变量

初始变量就是对变量进行第一次赋值,运行代码以最终的赋值结果进行输出。

public class datatype {
    public static void main(String[] args) {
        int a =1;     // 声明初始变量
            a =2;
        System.out.println(a);
        int b =1;     // 声明初始变量
        int c =10;     
            b =c;
        System.out.println(b);        
    }
}

输出结果为:

Java给一个变量赋值 java变量赋初值_Java给一个变量赋值

 

 

 二、自动类型转换(隐式转换)

短的类型可以赋值给长的类型,反过来则会编译异常。

Java给一个变量赋值 java变量赋初值_Java给一个变量赋值_02

public class datatype {
    public static void main(String[] args) {
        byte c = 10;
        int d = c;
        System.out.println(d);
    }
}

运行结果:

Java给一个变量赋值 java变量赋初值_赋值_03

当然也有强制转换,但是有丢失精度和溢出的风险:

Java给一个变量赋值 java变量赋初值_System_04

 

 

三、有多种类型的数据混合运算时,系统首先自动将所有数据转换成容量最大的那种数据类型,然后再进行计算。

 

Java给一个变量赋值 java变量赋初值_System_05

四、byte,short,char之间不会相互转换,他们三者在计算时首先转换为int类型。

char 会按照ASICC码的值进行计算。

Java给一个变量赋值 java变量赋初值_赋值_06

 

五、当把任何基本类型的值和字符串值进行连接运算时(+),基本类型的值将自动转化为字符串类型。

 

Java给一个变量赋值 java变量赋初值_赋值_07

Java给一个变量赋值 java变量赋初值_System_08

 

六、boolean 不能转换为其他类型

 

总结:

数字类型的运算规则:
1、有多种类型的数据混合运算时,系统首先自动将所有数据转换成容量最大的那种做据类型,然后再进行计算。数字类型的从小到大分别是byte、short、int、long、float、double。
2、数字类型的运算中,多个相同类型变量参与的运算,变量要先转换为相对应的数据类型的默认类型(比如两个byte类型的变量相加,会先把两个byte类型的变量转换成默认的int类型之后再计算,得到的结果是int类型)。
3、byte,short,char之间不会相互转换,他们三者在计算时首先转换为int类型

 

练习题:

String str1 = 4; //判断对错:错 需要加上双引号
String str2 = 3.5f + “”; //判断str2对错:对 这里的f是只浮点型float
System.out.println(str2); //输出:3.5
System.out .println(3+4+“Hello!”); //输出:7Hello!   说明java是按照数学的从左往右的运算方式
System.out.println(“Hello!”+3+4); //输出:Hello!34
System.out.println(‘a’+1+“Hello!”); //输出:98Hello!
System.out.println(“Hello!”+‘a’+1); //输出:Hello!a1

 

ASCII码:上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位之间的关系,做了统一规定。这被称为ASCII码。ASCII码一共规定了128个字符的编码,比如空格“SPACE"是32(二进制00100000),大写的字母A是65(二进制01000001