Java教学毕向东-day2

1)变量概述

变量:内存中的一块空间,用来存储数据;

2)计算机存储单源

硬盘–永久存储数据;内存–临时存储数据,运行时加载数据;

8 bits = 1Byte(计算机中最小存储单元-8位1字节,系统不会分配1bit,最小1Byte)

1 kB = 1024B

1 MB=1024kB

1 GB=1024MB

1 TB=1024GB

3)基本数据类型(4类8种)

  1. 变量必须要有明确的类型,什么类型的变量装载什么类型的数据;
Java数据类型:
四类     八种    字节数
整型	   byte     1 (+-)
   		short    2 (+-)
    	int		 4 (+-)
    	long	 8 (+-)
浮点型	  float    4
    	double 	 8
字符型	  char     2(表示字符 )
布尔型	  boolean  1(只有2个值truefalse)

4)常量和数据类型

  1. 注意常量的数据类型是什么,当常量值过大过小时可能会报错;

  2. 整数常量可以根据所在的范围来确定类型,java中默认的整数类型为int类型,指定数据类型必须加后缀,整数常量过大需要加后缀;

    100   		//默认int类型
    12345678901 //超出了默认int类型的取值范围,在Java中为错误的常量,必须加L
    12345678901L //long类型
    100L 		//long类型
    
  3. 浮点类型的常量也可以使用后缀,java中默认的浮点类型为double,float类型必须加后缀F

    3.14 	//double
    3.14D	//double
    3.14F	//float
    

5)变量创建3要素

  1. 在内存中,占有一个小的区域,存储数据,内存数据可以变化;

  2. 内存存储数据区域–>变量:创建变量需要3个要素:类型、名字、数据

    //数据类型	变量名	变量值
    int a = 3;
    //变量未赋值,不能使用
    int a;
    

6)定义所有的基本数据类型变量

  1. error:错误: 编码 GBK 的不可映射字符 (0x80);解决方法:记事本打开java文件,设置utf-8编码 或javac -encoding UTF-8 Variable.java

  2. 定义变量,变量可变,方便计算;

public class Variable{
    public static void main(String[] args)
    {   
        //1byte
        byte b = 100;
        System.out.println(b);
        //2byte
        short s = 200;
        System.out.println(s);
        //4bytes
        int i = 500;
        i = 15;
        System.out.println(i);
        //8byte
        long l = 12345678901L;  //必须加后缀L,long类型常量
        System.out.println(l);

        //flaot 4B
        float f = 1.0F;         //必须加F,浮点类型常量默认为double
        System.out.println(f);

        //double 8B
        double d = 2.0;
        double d2 = 2.0D;
        System.out.println(d);
        System.out.println(d2);

        //char类型  2B
        char c = '我';  //单引号括字符
        System.out.println(c);

        //bool 1B
        boolean bool = true;
        System.out.println(bool);

    }
}

编译运行:

javac -encoding utf-8 Variable.java
java Variable

7)定义字符串变量

  1. 字符串属于引用类型,不属于基本类型,使用方式同基本类型;

    /**
     *  常量:字符串,双引号,包裹起来
     */
    
    public class Variable_1{
        public static void main(String[] args)
        {
            //定义字符串变量,属于引用类型,不属于基本类型
            //定义方式和基本类型一样
            String s= "我爱Java";	
            System.out.println(s);
        }
    }
    

8)定义变量使用注意事项

  1. 定义变量后,不赋值,不能使用
  2. 变量具有自己的作用范围,有作用域限制,变量的有效范围,定义在一对大括号内;
  3. 变量不可以重复定义;

9)自动类型转换

  1. 不同类型的变量可以一起进行运算,但需要先进行类型转换再运算;
  2. 范围小的数据类型可以直接转换为大的,范围大的数据类型不能直接转换为小的;
  3. 布尔类型不参与类型转换;

10)强制类型转换

  1. 强制转换:将数据类型取值范围大的,转换为取值范围小的;

    public class DataConvert_1 {
        public static void main(String[] args) {
            //double浮点,转换为整数int
            double d = 3.14;
            int i = (int)d;
            System.out.println(i);
            byte b = (byte)200;     //损失精度,输出值非127,考虑补码---
            System.out.println(b);
        }
    }
    

11)算术运算符

  1. 运算符是用来计算数据的符号,数据可以是常量,也可以是变量;
  2. + 起连接作用:将一个字符串和其他数据连接起来,任何类型只要和字符串+,所有数据都变成了字符串;
  3. 整数除法会进行截断;
  4. 取模运算,两数相除,取余数;
  5. 自增自减的含义;

12)赋值运算符

  1. = += -= /= %=各种运算符使用;
//注意几种典型错误
byte b = 1;
b = b + 1; 	//error : 1 为int类型,b+1会发生强制类型转换为int类型
b = (byte)(b+1);	//right : 进行强制类型转换

b += 1;		//right: 这种复合运算符,将等号左右两边进行计算,会将结果自动强制转换为等号左边的数据类型;
b += 2; 	//等效于 b = (byte)(b + 2);

13)比较运算符

  1. 比较运算符计算结果只有2种:truefalse;
  2. 比较运算符:== != > < >= <=
  3. 注意区分赋值运算符合比较运算符

14)逻辑运算符

  1. & | ! && || ^
  2. 异或:相同为false,不同为true;

15)三元运算符

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

16)商场库存清单

实现效果:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Tlfna4aN-1608952059741)(F:\GitRes\Markdown图库\image-20201226105745858.png)]

/*
    实现商品库存清单
    1.实现表头,固定数据,直接写输出语句
    2.表格中间,商品数据,采用变量形式 定义变量 找对数据类型
    3.表格尾巴,一部分数据固定
*/
public class Shop {
  public static void main(String[] args) {
    System.out.println("--------商场库存清单----------");
    System.out.println("品牌型号    尺寸    价格    库存");
    //定义数据变量
    String macBrand = "MacBookAir";
    double macSize = 13.3;
    double macPrice = 6988.88;
    int macCount = 5;

    String thinkBrand = "ThinkpadT450";
    double thinkSize = 14.0;
    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);

  }  
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值