javase day02

1.变量的概述

就是容器,可以临时存储的.

2.计算机存储单元

计算机中最小的存储单元是字节,

1B(字节) = 8bit

1KB = 1024b

1MB = 1024KB

1GB = 1024MB

1TB = 1024GB

1PB = 1024TB

3.java中的数据类型四类八种

整型

byte              1字节    -128~127

short 2

int 4

long 8

浮点

float 4

double 8

字符型

char 2

布尔

booelan 1

4.常量和数据类型

程序中如果是整型且在范围内,那么它是int类型,除非指定类型        整理默认类型是int

同上在浮点数中,如果定义的浮点数要是float那么在后面必须添加F浮点数默认类型是double

5.变量创建的三要素

变量名 数据类型 值

6.定义所有的基本类型数据

7.定义字符串变量

8.定义变量注意事项

public class demo{
	public static void main(String[] args){
		//错误1,定义了没赋值不能使用,所以定义和赋值一起声明 int i = 3;
		int i;
		System.out.println(i);

		//变量的作用域 {}
		{
			int y = 9;
		}
		System.out.println(y);
	}
}
9.类型转换-自动转换

不同类型之间的计算,会先转换后计算.

范围小的会先转换为大的后计算(short转换到int之后计算) (自动转换)

范围大的不能转换到小的后计算(会有精度的丢失需要强转)

boolean类型不参与转换

下面是转换顺序

byte-short-int-long-float-double

10.类型湖州那还-强制转换

public class demo{
	public static void main(String[] args){
		int x = (int)111.222;
		System.out.println(x);
	}
}
11.算数运算符1

+ - * / % ++ --

注意+在字符串中是连接的意思 任何类型只要和字符串做+操作,所有的数据都变成了字符串.

12.算数运算符2

++ -- 在前面和后面的区别

1.在变量自己计算,在前在后没区别.

2.参与了别的计算

public class demo{
	public static void main(String[] args){
		int a = 3;
		int b = a++;
		System.out.println(a); //4
		System.out.println(b); //3

		int y = 3;
		int z = ++y;
		System.out.println(y);
		System.out.println(z);

	}
}
13.赋值运算符

= += -= /= %=

a+=3 比a=a+3 效率高,且有隐式的转换

14.比较运算符

==  !=  < > <= >=

15.逻辑运算符

& | ^   与   或   异或

! && || 非   短路与  短路或

&只要有一边是false就是false,只有两边都是true才是true

|只要有一边是true就是true,只有两边都是false才是false

^两边相同为false,两边不同为true

!取反

&&短路与 一边有false另一边就不运行了,提高效率

||短路或    一边有true另一边就不运行了,提高效率

16.三元运算符

布尔表达式?结果1:结果2;

17.商场库存案例需求和分析

18.代码实现

public class demo{
	public static void main(String[] args){
		String macname = "MacBookAir";
		double maccc   = 13.3;
		double macprice = 6988.8;
		int mackc = 3;

		String lenname = "ThinkpadY600";
		double lencc   = 14.0;
		double lenprice = 5888.8;
		int lenkc = 5;

		String asusname = "ASUS FL6800";
		double asuscc   = 15.6;
		double asusprice = 4999.9;
		int asuskc = 10;

		System.out.println("-----------------------商品库存清单-----------------");
		System.out.println("品牌型号"+"     "+"尺寸"+"    "+"价格"+"    "+"库存数");
		System.out.println(macname+"  "+maccc+"  "+"  "+macprice+"  "+mackc);
		System.out.println(lenname+"  "+lencc+"  "+"  "+lenprice+"  "+lenkc);
		System.out.println(asusname+"  "+asuscc+"  "+"  "+asusprice+"  "+asuskc);
		System.out.println("----------------------------------------------------");

		System.out.println("总库存数:"+(mackc+lenkc+asuskc));
		System.out.println("库存商品总金额:"+(mackc*macprice+lenkc*lenprice+asuskc*asusprice));
	}
}


课后作业

1.什么是变量?变量的定义格式?要使用变量需要注意什么?


2.Java中的数据类型分几类?基本数据类型有哪些?



3.数据类型转换:




面试题:
第一题:
byte b1=3,b2=4,b;
b=b1+b2;
b=3+4;
哪句是编译失败的呢?为什么呢?


第二题:
byte  by = 130;有没有问题?有问题如何解决?结果是多少呢?



第三题:
byte b = 10;
b++;
b = b + 1;
哪句是编译失败的呢?为什么呢?
4.常见的算术运算符有哪些?
答:+ - * / %
(1)+运算符的作用有哪些?
可以作为数学运算符 也可用作字符串拼接符
(2)除法和取余的区别?
除法是数学运算机型相初操作 取余数运算符是对除法操作之后取其余数进行操作的
(3)++和--的使用规则?
分别为自增 自减 在放在 变量前面就是先进行运算放在后面就是后进行运算


5.常见的赋值运算符有哪些?
答:= += -= *= /= %=
(1)+=运算的作用是什么?
a += b;== a = a + b;
(2)扩展的赋值运算符有什么特点?

6. short s = 1; s = s + 1;有没有问题?如果有怎么解决?

   short s = 1; s += 1;有没有问题?如果有怎么解决?

7.分析以下需求,并用代码实现:
(1)已知一个三位数,请分别获取该三位数上每一位的数值
代码1:
public static void main(String[] args) {
@SuppressWarnings("resource")
char chs[] = String.valueOf(new Scanner(System.in).nextInt()).toCharArray();
System.out.println("个位是:"+chs[2]+"\n十位是:"+chs[1]+"\n百位是:"+chs[0]);
}
代码2:
System.out.println("个位是:" + (354 % 10) + "\n十位是:" + (354 / 10 % 10) + "\n百位是:" +(354 / 100));

(2)例如:123的个位、十位、百位,分别是3、2、1
(3)打印格式"数字123的个位是 3, 十位是 2, 百位是 1"


8.看程序说结果,请不要提前运行?
public class Test1 {
public static void main(String[] args) {
int x = 4;
int y = (--x)+(x--)+(x*10);
System.out.println("x = " + x + ",y = " + y);
}
}












答案:

1.就是可变的量

数据类型 变量名 = 数值;
同一范围内不能重复定义
不赋值不能使用


2.两大类
基本数据类型
byte(1) short(2) int(4) long(8) float(4) double(6) char(2) boolean(1)
引用数据类型
类 接口 数组 枚举
3.

隐式转换:由低级专向高级
强制转换:由高级专向低级
//错误 因为他们最终是要转向int类型 而int类型的值不能赋值给byte
//正确 因为他们都是常量 具有常量类型优化机制 可以直接识别为byte


有问题 因为这个数超出了byte的取值范围 要用byte类型进行强制转换 结果是-126


//失败 因为在和一个int类型的常量进行相加的时候b自动转换成int类型 而一个int类型的数据是没办法直接赋值给byte类型的变量的




会进行自动强制数据类型转换


有问题 因为short类型的专用字节数比int小 但是1是int类型 在表达式进行运算的时候就吧其值提升为int类型了 而int类型不能直接赋值给short类型的变量可以同过强制数据类型转换来解决
没有问题 因为使用的是扩展赋值运算符 这样的话就会实现自动强制数据类型转换

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值