Java学习_day002:变量

一、变量

1.什么是变量

在内存中开辟的存储空间,用于存放运算过程中的需要用到的数据。(存数的,代词----指代它所储存的那个数

1.1 变量的声明

用特定的语法声明一个变量,让运行环境为其分配空间。
(在银行开立一个账户)

int a;
1.2 变量的初始化

对变量的第一次赋值。(给账户存钱)

int a;
a=10;
int b=10;
1.3 变量的使用

①对变量的使用就是对它所存数的使用

int a=5;
int b=a+10;//取出a的值5,加10后赋值给b;
System.out.println(b);//输出变量b的值。
System.out.println("b");//输出字母b,双引号中原样输出。

②变量的使用必须与数据类型匹配
③变量在使用前必须声明并初始化

1.4变量的命名

只能包含字母、数字、_、$;不能以数字开头。
严格区分大小写
不能使用关键字
允许使用中文但不建议
建议英文的“见名知意”
score,myScore,myJavaScore---------------驼峰命名法(变量)
Score,MyScore,MyJavaScore---------------帕斯卡命名法(类)

package day002;
//变量的演示
public class VarDemo {

	public static void main(String[] args) {
//1.变量的声明:开了个账户
		int a;//声明了一个整形变量名为a
		int b,c,d;//声三个整形变量名为b/c/d
//2.变量的初始化:第一次赋值;给账户存钱
		int e=250;//声明整形变量e并且赋值为250
		int f;//声明整形变量f		
		f=250;//给f赋值为250
		f=360;//修改变量f的值为360
//变量的使用:用得是账户中的钱
		int g=5;
		int h=g+10;//取出g的值5,加10后,在赋值给h
		System.out.println(h);//输出变量h的值
		System.out.println("h");//输出字母h
		//int i=3.14//编译错误,数据类型不匹配
		//System.out.println(i);//未声明变量i
		int i;
		//System.out.println(i);//声明后未赋值
//4.变量的命名
	int a1,a_5$,_$;
	//int a*a;不能使用*
	//int 1a;不能使用数字开头
	int aa=5;
	//System.out.println(Aa);大小应该区分
	//int class;不可占用关键词
	int 年龄;//可,但不建议
	int age;//建议使用
	int score,myScore,myJavaScore--------驼峰命名法(变量)
	}

}

二、基本数据类型

**八种基本类型:byte,short,int,long,float,double,boolean,char
关于大小单位换算:1G=1024M(兆);1M=1024KB(千字节);1KB=1024B(字节);1B=8Bit(位)

1. int 整形

占用4个字节;取值:-21个多亿到21个多亿;

1.1 整数直接量默认为int类型,但不能超过范围,一旦超出则会发生编译错误。
1.2 两个整数相除还是整数,小数位无条件舍弃。
1.3 整数运算时若超出范围,会发生溢出(溢出需要避免)。
2. long 长整型

占用8个字节,取值:9百万万亿↑;

2.1 长整型直接量需要在数字后加L或者l
2.2 整数运算时,如果可能发生溢出,建议在第一个数字后加L。
3. double 浮点型

占用8个字节,取值范围很大;

3.1 浮点数直接量默认为double型,表示float需要在数后加F或f;
3.2 double和float型数据参与运算时,可能会发生舍入误差(精确场合不能使用);
package day002;
//数据类型 的演示
public class DataTypeDemo {

	public static void main(String[] args) {
//1. int:整形,4字节,-21多亿到21多亿
	int a=25;//25为整数直接量,默认int型
	//int b=10000000000;//超出范围所以编辑错误;
	System.out.println(5/2);//2	
	System.out.println(2/5);//0	
	System.out.println(5.0/2);	//2.5
	int c=2147483647;//int的最大值
	int d=c+1;
	System.out.println(d);//-2147483648(int最小值)
//2.long:长整型,8个字节,很大很大
	//long e=10000000000000;//编译错误,如不加L,则默认为int;
	long f=1000000000000l;//长整型直接量需要在数字后加L
	long g=1000000000*2*10L;
	System.out.println(g);//200yi
	long h=1000000000*3*10L;
	System.out.println(h);//yichu
	long i=1000000000L*3*10;
	System.out.println(i);//300yi
//3.double:浮点型,8个字节,很大很大
	double ao=3.1415986;//3.1415986为浮点数直接量,默认double型
	double j=6.0,k=4.9;
	System.out.println(j-k);
//4. boolean:布尔型,1字节
	boolean b1=true;//true为布尔型的直接量
	boolean b2=false;//false为布尔型的直接量
	//boolean b3=25;//编辑错误,布尔型只能取值为true或者false;
//5.char:字符型,2个字节
	char c1='女';//字符女
	char c2='f';//字符f
	char c3='8';//字符8
	char c4=' ';//字符空格
	//char c5=女;//编译错误,字符必须在单引号中
	//char c6='';//不允许空字符
	//char c7='女男';//不允许多字符
	char c8=65;//直接写了代码,其等于char c8='A';0到65535之间
	System.out.println(c8);//A
//类型间的转换:
   int a=5;
   long b=a;//自动类型转换
   //int c=b;//由大到小要强转,这样为编辑错误
   int c=(int)b;//强转类型转换
   long d=5;//自动类型转换
   double e=5;//自动类型转换
   long f=100000000000l;
   int g=(int)f;
   System.out.println(g);//发生溢出现象,故强转有可能会发生溢出;
   double h=45.987;
   int i=(int)h;
   System.out.println(i);//强转有可能丢精度
   byte b1=5;//整数直接量可以直接赋值给byte、short、char
   byte b2=6;
  // byte b3=b1+b2;//byte、short、char型数据参与运算时,会先一律转换为int再运算,int比byte等级高,
  byte b4=~~(byte)( b1+b2);如果不加后面括号,会发生优先级报错;
	}

}

4. boolean 布尔型

占用1个字节,只能赋值true或false;

4.1 只能取true或false
5. char 字符型

占用2个字节

5.1 采用Unicode字符集编码,每个字符都有一对应码;表现形式是字符char,本质上是int;

ASCII码**(‘a’—97 ‘A’-------65 ‘0’------48)**
在这里插入图片描述

5.2 字符型直接量必须在单引号里面,只能有一个
5.3 特殊字符需要通过前加“\”来处理,例如‘\;’输出‘;’

三、类型间转换

类型从小到大依次为:byte-----short----int----long—float—double
char—int

1. 两种方式
1.1 自动类型转换:小类型到大类型
1.2 强转类型转换:大类型到小类型

语法:(要转成的类型)变量
注意:强转有可能会溢出or丢失精度;

2. 两点规则
2.1 整数直接量可以直接赋值给byte、short、char,但不能超出范围。
2.2 byte、short、char型数据参与运算时,会先一律转换为int再运算;
int a;//int a;int a;int a;int a;
		int b,c,d;//int b,c,d;int b,c,d;int b,c,d;int b,c,d;
        int e=25;//int e=25;int e=25;int e=25;int e=25;
		int f;f=25;
   //4 int f;f=25;
  //3 int f;f=25;
 //2 int f;f=25;
//1 int f;f=25;		
		int g=25;int h=g+10;
   //4  int g=25;int h=g+10;
  //3  int g=25;int h=g+10;
 //2  int g=25;int h=g+10;	
//1  int g=25;int h=g+10;
    //5 int i=34.567;
   //4 int i=34.567;
  //3 int i=34.567;
 //2 int i=34.567;
//1 int i=34.567;
    //5 System.out.println(j);
   //4 System.out.println(j);
  //3 System.out.println(j);
 //2 System.out.println(j);
//1 System.out.println(j);
/*5 int j;
		System,out.println(j);*/
/*4 int j;
System.out.println(j); */
/*3 int j;
System.out.println(j); */
/*2 int j;
System.out.println(j); */
/*1 int j;
System.out.println(j); */
int a=25;//int a=25;int a=25;int a=25;int a=25;
    //5 int b=10000000000;
   //4 int b=10000000000;
  //3 int b=10000000000;
 //2 int b=10000000000;
//1 int b=10000000000;
System.out.println(5/3);//1
   //4 System.out.println(5/3);
  //3 System.out.println(5/3);
 //2 System.out.println(5/30);
//1 System.out.println(5/3);
System.out.println(3/5);//0
   //4 System.out.println(3/5);
  //3 System.out.println(3/5);
 //2 System.out.println(3/5);
//1 System.out.println(3/5);
System.out.println(3.0/5);//0.6
   //4 System.out.println(3.0/5);
  //3 System.out.println(3.0/5);
 //2 System.out.println(3.0/5);
//1 System.out.println(3.0/5);
int c=2147483647;
   //4 int c=2147483647;
  //3 int c=2147483647;
 //2 int c=2147483647;
//1 int c=2147483647;
int d=c+1;System.out.println(d);
   //4 int d=c+1;System.out.println(d);
  //3 int d=c+1;System.out.println(d);
 //2 int d=c+1;System.out.println(d);
//1 int d=c=1;System.out.println(d);
		long e=10000000000L;System.out.println(e);
   //4 long e=10000000000L;System.out.println(e);
  //3 long e=10000000000L;System.out.println(e);
 //2 long e=10000000000L;System.out.println(e);
//1 long e=10000000000L;System.out.println(e);
		long g=1000000000*2*10L;System.out.println(g);
   //4 long g=1000000000*2*10L;System.out.println(g);
  //3 long g=1000000000*2*10L;System.out.println(g);
 //2 long g=1000000000*2*10L;System.out.println(g);
//1 long g=1000000000*2*10L;System.out.println(g);		
		long h=1000000000L*3*10;System.out.println(h);
   //4 long h=1000000000L*3*10;System.out.println(h);
  //3 long h=1000000000L*3*10;System.out.println(h);
 //2 long h=1000000000L*3*10;System.out.println(h);
//1 long h=1000000000L*3*10;System.out.println(h);		
double i=25.789;
   //4 double i=25.678;
  //3 double i=25.878;
 //2 double i=25.789;
//1 double i=25.789;
double j=6.0,k=4.9;System.out.println(j-k);
   //4 double j=6.0,k=4.9;System.out.println(j-k);
  //3 double j=6.0,k=4.9;System.out.println(j-k);
 //2 double j=6.0,k=4.9;System.out.println(j-k);
//1 double j=6.0,k=4.9;System.out.println(j-k);
		
boolean b1=true;
   //4 boolean b1=true;
  //3 boolean b1=true;
 //2 boolean b1=true;
//1 boolean b1=true
boolean b2=false;
   //4 boolean b2=false;
  //3 boolean b2=false;
 //2 boolean b2=false;
//1 boolean b2=false;
    //5 boolean b3=25;
   //4 boolean b3=25;
  //3 boolean b3=25;
 //2 boolean b3=25;
//1 boolean b3=25;
char c1='女';//char c1='女';char c1='女';char c1='女';char c1='女';
char c2='f';//char c2='f';char c2='f';char c2= 'f';char c2='f';
char c3='8';//char c3='8';char c3='8';char c3='8';char c3='8';
char c4=' ';//char c4=' ';char c4=' ';char c4=' ';char c4=' ';
    //5 char c5='';
   //4 char c5='';
  //3 char c5='';
 //2 char c5='';
//1 char c5='';
    //5 char c6=女;
   //4 char c6=女;
  //3 char c6=女;
 //2 char c6=女;
//1 char c6=女;
    //5 char c7='中国';
   //4 char c7='中国';
  //3 char c7='中国';
 //2 char c7='中国';
//1 char c7='中国';
char c8='\"';System.out.println(c8);
   //4 char c8='\"';System.out.println(c8);
  //3 char c8='\"';System.out.println(c8);
 //2 char c8='\"';System.out.println(c8);
//1 char c8='\"';System.out.println(c8);
char c9=65;System.out.println(c9);
   //4 char c9=65;System.out.println(c9);
  //3 char c9=65;System.out.println(c9);
 //2 char c9=65;System.out.println(c9);
//1 char c9=65;System.out.println(c9);
	int a=5;long b=a;int c=(int)b;
   //4 int a=5;long b=a;int c=(int)b;
  //3 int a=5;long b=a;int c=(int)b;
 //2 int a=5;long b=a;int c=(int)b;
//1 int a=5;long b=a;int c=(int)b;
		long d=5;
   //4 long d=5;
  //3 long d=6;
 //2 long d=7;
//1 long d=7;
		double e=5;
   //4 double e=6;
  //3 double e=7;
 //2 double e=8;
//1 double e=9
long f=10000000000l;int g=(int)f;System.out.println(g);
   //4 long f=10000000000l;int g=(int)f;System.out.println(g);
  //3 long f=10000000000l;int g=(int)f;System.out.println(g);
 //2 long f=10000000000l;int g=(int)f;System.out.println(g);
//1 long f=10000000000l;int g=(int)f;System.out.println(g);
double h=45.987;int i=(int)h;System.out.println(i);
   //4 double h=45.987;int i=(int)h;System.out.println(i);
  //3 double h=45.678;int i=(int)h;System.out.println(i);
 //2 double h=46.456;int i=(int)h;System.out.println(i);
//1 double h=46.123;int i=(int)h;System.out.println(i);
byte b1=5;byte b2=6;byte b4=(byte)(b1+b2);
   //4 byte b1=5;byte b2=6;byte b4=(byte)(b1+b2);
  //3 byte b1=5;byte b2=6;byte b4=(byte)(b1+b2);
 //2 byte b1=5;byte b2=6;byte b4=(byte)(b1+b2);
//1 byte b1=5;byte b2=6;byte b4=(byte)(b1+b2);
	
		//‘a’---97     ‘A’-------65     ‘0’------48
    //5 System.out.println('2'+'2');
   //4 System.out.println('2'+'2');
  //3 System.out.println('2'+'2');
 //2 System.out.println('2'+'2');
//1 System.out.println('2'+'2');
		long time=System.currentTimeMillis();System.out.println(time);
   //4 long time=System.currentTimeMillis();System.out.println(time);
  //3 long time=System.currentTimeMillis();System.out.println(time); 
 //2 long time=System.currentTimeMillis();System.out.println(time);
//1 long tiem=System.currentTimeMillis();System.out.println(time);
		int a=5;a=a+10;System.out.println(a);
   //4 int a=5;a=a+10;System.out.println(a);
  //3 int a=5;a=a+10;System.out.println(a);
 //2 int a=5;a=a+10;System.out.println(a);
//1 int a=5;a=a+10;System.out.println(a);
    //5 double money=5000;money=money*0.8;System.out.println(money);
   //4 double money=5000;money=money*0.7;System.out.println(money);
  //3 double money=6000;money=money-1000;System.out.println(money);
 //2 double money=7000;money=money-2000;System.out.println(money);
//1 double money=8000;money=money*0.6;Syetem.out.println(money);
		
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值