美文网首页
JAVA学习--变量

JAVA学习--变量

作者: 蓝栀灬 | 来源:发表于2019-01-18 15:26 被阅读0次

    public class b {

    public static void main(String[] args) {

    //浮点类型 //浮点类型默认double

    float f=13.3f; //float占四个字节,在写的时候需要在后面加上f。小数类型默认的是double,不加f会损失精度

    double d=33.3; //double占八个字节

    //整数类型 //整数类型默认int

    byte b=10; //占一个字节

    short s=20; //占两个字节

    int i =30; //占四个字节

    long x=40; //占八个字节  //如果long后面需要加L进行标识,需要加L,因为l和1太像

    System.out.println(0b100); //0b表示二进制

    System.out.println(0100); //前面加0表示八进制

    System.out.println(100); //十进制

    System.out.println(0x100); //0x表示十六进制

    System.out.println(f);

    System.out.println(d);

    //数据转换之强制类型转换

    int m=4;

    byte n=3;

    /*

    n=m + n;

    System.out.println(n);

    //因为int是4个字节而byte是一个字节,如果输出int,则可将byte前面补上3位0。而若要输出byte,会导致int的前三位缺失

    */

    n = (byte) (n + m);

    System.out.println(n); //因为本题所输出的类型也是byte,所以可以在前面强制进行byte转换,令所输出的为byte类型。

    //byte n=(byte) (126 + 4); //如果所输出的超过byte类型,则会去掉前面只保留最后八位成为输出结果

    /*

    byte和byte(short,char)运算时会提升为int,两个int类型相加的结果也是int

    eg:

    byte b1=3;

    byte b2=4;

    byte b3 = b1 + b2; //报错提示会损失精度

    //同时b1 b2是两个变量,变量存储的值是变化的,在编译的时候无法判断里面具体的值,相加时有可能会超出byte的取值范围。

    */

    byte b4 = 3 + 4;

    System.out.println(b4); //java编译器有常量优化机制,即在这里先加3+4计算出来,然后判断在byte范围内,所以可以输出

    //ASCII表

    System.out.println('a' + 1); //字符与int相加会将字符自动提升为int类型,ASCII码表中a字符对应int类型的97

    System.out.println((char) ('a' + 1)); //可将所得到的98强制转化为char类型,而98在ASCII表中是由b表示

    System.out.println("hello" + 'a' + 1); //任何数据类型与字符串用+号连接都会产生新的字符串,输出helloa1

    System.out.println('a' + 1 + "hello"); //输出98hello,因为从左往右进行计算,会先进行'a'+1,生成的数据再与字符串相连接

    System.out.println("5 + 5 =" + (5+5)); //先加上小括号可以提升后面5+5的优先级再与前面的字符串进行连接,若没有小括号会直接生成字符串

    //char是否可以存储中文

    char c1 = '中';

    System.out.println(c1); //char可以存储中文,但是单引号只能一个字符,只能一个字符。 //java采用的是unicode编码,unicode编码中每两个

    //字符占用两个字节,中文占用的也是两个字节,所以java中的字符可以存储一个汉字。

    //System.out.println(10 / 3); //整数与整数相除的结果只能是整数,虽然不能整除,但是只能得到3

    //System.out.println(10 / 3.0) //整数与小数相除会得到小数,即3.3333333

    //a++和++a 在单独使用的时候没有区别

    int a = 3;

    a++;

    System.out.println("a =" + a);

    int p,h;

    int e = 4;

    int g = 5;

    p = e ++;   //当++在变量后面的时候会先将变量中的值取出进行赋值操作然后在进行+1。如e=4,p=e++,则先将e的值赋值给p,e再进行+1

    h = ++ g;   //当++在变量前面的时候会先进行+1,再将变量进行赋值操作。如g=5,h=++g,则现将g进行++操作,再将所得到的6赋值给h

    System.out.println("p = " +p);

    System.out.println("h = " +h);

    System.out.println("e = " +e);

    System.out.println("g = " +g);

    }

    }

    相关文章

      网友评论

          本文标题:JAVA学习--变量

          本文链接:https://www.haomeiwen.com/subject/ziundqtx.html