JAVA学习--变量

2019-01-18  本文已影响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);

}

}

上一篇下一篇

猜你喜欢

热点阅读