Day02-JAVA

日拱一卒,功不唐捐

  1. 变量的概述
    什么是变量?
    变量是一个内存中的小盒子(小容器),容器是什么?生活中也有很多容器,例如水杯是容器,用来装载水;你家里的大衣柜是容器,用来装载衣裤;饭盒是容器,用来装载饭菜。那么变量是装载什么的呢?答案是数据!结论:变量是内存中装载数据的小盒子,你只能用它来存数据和取数据。

  2. 计算机的存储单元:
    计算机中储存和运算的最小单位是?
    一个字节,也就是一个byte.
    常用储存单位
    1B(字节) = 8bit
    1KB = 1024B
    1MB = 1024KB
    1GB = 1024MB
    1TB = 1024GB
    1PB = 1024TB

  3. Java中数据类型四类八种
    A: 数据类型四类八种
    基本数据类型之四类八种 注意:
    整型常量默认是int类型
    小数(浮点)默认是double类型
    定义float类型的数据后面+“ f ”,否则默认是double
    定义长整型数据如果超过int取值范围后面要加 “L ”(例如:100L,添加了“L ”后缀的整数常量都是长整型的)

  4. 变量创建的三要素:
    在这里插入图片描述 变量使用注意事项:
    变量定义后可以不赋值,使用时在赋值,不赋值是不能使用
    变量是有自己的作用范围,变量的有效范围是定义的一对大括号内
    变量不可以重复定义

  5. 变量的类型转换(boolean不参与类型转换)

  6. 自动类型转换:

    A.两种数据类型彼此兼容
    B.目标类型的取值范围大于源类型的取值范围

public class Demo05 {

	/**
	 * @param 自动类型转换
	 */
	public static void main(String[] args) {
		// 满足条件:1.两种数据彼此兼容,2.目标数据类型的取值范围大于源类型数据类型的取值范围
		byte b=2;
		int x=b;
		System.out.println(x);
	}

}

在这里插入图片描述

  1. 强制类型转换:
    A.两种类型彼此不兼容
    B.目标数据类型的取值小于源类型数据类型取值范围
    C.公式: 被转后的数据类型 变量名 =(被转后的数据类型)要转的数据 类型的变量名
public class Demo06 {

	/**
	 * @param 强制类型的转换
	 */
	public static void main(String[] args) {
		//满足条件:1.两种类型彼此不兼容,2.目标数据类型的取值小于源类型数据类型取值范围
		//公式: 被转后的数据类型 变量名 =(被转后的数据类型)要转的数据类型的变量名
		int a=200;
		byte b=(byte) a;
		System.out.println(b);
		System.out.println(a);
		byte  c=(byte) 500;
		System.out.println(c);
		
			
	}

}

在这里插入图片描述

  1. 多学一招:表达式类型自动提升:
    (如一个byte型的变量在运算期间,类型会自动提升为int型)
public class Demo07 {

	/**
	 * @param 表达式类型自动提升
	 */
	public static void main(String[] args) {
		// 例如:一个byte类型的变量在运算期间自动提升为int类型
		byte b1=2;
		byte b2=3;
		byte b3=(byte) (b1+b2);
		System.out.println(b3);

	}

}

在这里插入图片描述各种数据类型按照范围从小到大排列:
byte—— short —— int —— long —— double
9. java的运算符
算术运算符的注意要点:
1.在进行自增或自减的运算时,如果运算符在操作数的前面则是:先进行自增或自减运算,再进行其他运算。反之,如果运算符在操作数的后面则是:先进行其他运算,再进行自增或自减运算。
2.进行除法运算,有小数参与时,得到的结果也会是一个小数。
3.在进行取模运算时,运算结果的正负取决于被模数(%左边的数)的符号

 public class Demo08 {

	/**
	 * @param 算术运算符
	 */
	public static void main(String[] args) {
		/*
		 * 算术运算符的注意要点:
		 * 1.在进行自增或自减的运算时,如果运算符在操作数的前面则是:先进行自增或自减运算,再进行其他运算。
		 * 反之,如果运算符在操作数的后面则是:先进行其他运算,再进行自增或自减运算。
		 * 
		 */
		int a=5;
		int b=6;
		int x=a+b++;
		int y=a+++b;
		System.out.println("x="+x);
		System.out.println("y="+y);
//		2.进行除法运算,有小数参与时,得到的结果也会是一个小数。
		float f=2.5f;
		int a1=10;
		float q = f/a1;
		System.out.println("q="+q);
//	3.在进行取模运算时,运算结果的正负取决于被模数(%左边的数)的符号
		int b1=-5;
		int b2=3;
		int x1=b1%b2;
		System.out.println("x1="+x1);

	}

}

在这里插入图片描述赋值运算符:
**注意事项:**在赋值的过程中,运算顺序从右往左,将右边表达式的结果赋值给左边的变量
多学一招:将一个int类型的值赋给一个short类型的变量,需要进行强制类型转换,但是在使用赋值运算符运算时,强制类型转换会自动完成

public class Demo09 {
		public static void main(String[] args) {
			//注意事项:在赋值的过程中,运算顺序从右往左,将右边表达式的结果赋值给左边的变量
			int a=2;
			int b=3;
			int x=a+=b;  //a=a+b
			System.out.println(a);
			System.out.println(b);
			System.out.println("x="+x);
			//多学一招:将一个int类型的值赋给一个short类型的变量,需要进行强制类型转换
			//但是在使用赋值运算符运算时,强制类型转换会自动完成
			short s=3;
			int i =5;
			s+=i;
			System.out.println("s="+s);
			
		}
}

在这里插入图片描述比较运算符:

 public class Demo10 {

	/**
	 * @param 比较运算符
	 */
	public static void main(String[] args) {
//		比较运算符,计算结果只有2个可能,true,false
//		结算结果的数据类型, boolean类型
//		比较符号两边的数据 
		int i = 3;
		int j = 4;

		System.out.println(i==j);
		
		System.out.println(2==1);
		System.out.println(2!=1);
	}

}

在这里插入图片描述逻辑运算符:
逻辑运算符,对两个boolean类型数据之间进行计算
结果也是boolean类型
& : 一边是false,运算结果就是false, 见了false,就是false
| : 一边是true,运算结果就是true,见了true,就是true
^ : 两边相同为false,不同为true
! : 取反 !true = false !false=true
&& : 短路与 , 一边是false,另一边不运行
|| : 短路或 , 一边是true,另一边不运行

public class Demo11 {

	/**
	 * @param 逻辑运算符
	 */
	public static void main(String[] args) {
//		逻辑运算符,对两个boolean类型数据之间进行计算
//		结果也是boolean类型
//		
//		& :  	一边是false,运算结果就是false, 见了false,就是false
//		| :  	一边是true,运算结果就是true,见了true,就是true
//		^ : 	两边相同为false,不同为true
//		! : 	取反 !true = false  !false=true
//		&& : 	短路与 , 一边是false,另一边不运行
//		|| : 	短路或 , 一边是true,另一边不运行
       int a=10;
       int b=20;
       System.out.println(a>b && ++a>1);
       System.out.println("a="+a);
       System.out.println("b="+b);
       int c=2;
       int d=4;
       System.out.println(c<d || ++c>1);
       System.out.println("c="+c);
       System.out.println("d="+d);
       
	}

}

在这里插入图片描述三元运算符:
公式:
布尔表达式 ? 结果1:结果2;
布尔表达式结果是true,三元运算符的结果,就是 结果1
布尔表达式结果是false,三元运算符的结果,就是 结果2

public class Demo12 {

	/**
	 * @param 三元运算符
	 */
	public static void main(String[] args) {
//		三元运算符
//		公式:
//		   布尔表达式 ? 结果1:结果2;
//		   布尔表达式结果是true,三元运算符的结果,就是  结果1
//		   布尔表达式结果是false,三元运算符的结果,就是 结果2

		int a = 5;
		int b = 3;
		int c = 1;
		//         T  && T 
		int n2 = (a>b && b>c) ? (c++) : (++c);
		System.out.println(c);
		System.out.println(n2);
		System.out.println(3>5?99:88);
		String s = 0==1?"哈哈":"呵呵";
		System.out.println(s);
		

	}

}

在这里插入图片描述

  1. 任务案例2-1商城库存清单程序设计
  2. 效果图:

在这里插入图片描述

  1. 代码如下:
/*
	实现商品库存清单案例
	  步骤:
	   1. 实现表头, 是固定数据,直接写输出语句 sop
	   2. 表格中间, 商品数据,采用变量形式 定义变量,找对数据类型
	      输出所有变量
	   3. 表格尾巴, 一部分数据固定
	      另一部分吗,商品数据进行数学计算,运算符
*/
public class Shopp{
	public static void main(String[] args){
		//输出表头固定数据
		System.out.println("----------商场库存清单----------");
		System.out.println("品牌型号     尺寸    价格    库存数");
		//定义表格中的数据变量
		//品牌型号,String, 尺寸,价格 double  库存int
		String macBrand = "MacBookAir";
		double macSize = 13.3;
		double macPrice = 6988.88;
		int    macCount = 5;
		
		String thinkBrand = "ThinkPadT450";
		double thinkSize = 14;
		double thinkPrice = 5999.99;
		int    thinkCount = 10;
		
		String asusBrand = "ASUS-FL5800";
		double asusSize = 15.6;
		double asusPrice = 4999.5;
		int    asusCount = 18;
		//商品信息变量进行打印,变量之间加入一定的字符串空格
		System.out.println(macBrand+"   "+macSize+"    "+macPrice+"   "+macCount);
		System.out.println(thinkBrand+" "+thinkSize+"    "+thinkPrice+"   "+thinkCount);
		System.out.println(asusBrand+"  "+asusSize+"    "+asusPrice+"    "+asusCount);
		
		//计算库存总数,所有商品数量库存求和
		int totalCount = macCount+thinkCount+asusCount;
		//计算所有商品库存的总金额,每个商品价格*库存数
		double totalMoney = macCount*macPrice + thinkCount*thinkPrice + asusCount*asusPrice;
		//输出表格底部
		System.out.println("总库存数: "+totalCount);
		System.out.println("商品库存总金额: "+totalMoney);
	}
}

13.Day02 知识小结…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值