Day01
Java编译过程
1 编译期:java源文件经过编译,生成.class字节码文件
2 运行期 JVM加载.class并运行.class文件
名词解释
JVM:java虚拟机
用以加载并运行.class文件
JRE:java运行环境
除了包含JVM以外,还包含运行java程序所必需的环境
JRE=JVM+java系统类库(小零件)
JDK:java开发工具包
除了包含JRE以外,还包含开发java程序的一系列命令工具。
JDK=JRE+编译、运行等命令工具
说明:
运行java程序的最小环境为jre
开发java程序的最小环境为jdk
Day02
一、变量:存储数据
1)声明:
int a; //声明一个整形的变量名为a
Int b,c,d; //声明三个整形的变量。
2) 初始化:第一次赋值
int a=250; //赋值为250
int a;
a=250;
a=360; //修改
2) 使用
对变量的操作就是对他所存的数的操作。
Int a=5;
Int b=a+10;
变量的使用必须与数据类型匹配
Int a=3.14; //错误
变量在使用前必须声明并初始化
2) 命名
只能包含字母、数字、下划线和$符,并且不能以数字开头
严格区分大小写
不能使用关键字
⦁ 基础数据类型
⦁ int 整型
整数直接量默认为int,不能超出范围,否则编译错误。
整数相除还是整数,小数部分舍弃
整数运算超出范围会溢出
直接量超过范围则编译错误,运算超过范围则溢出。
⦁ long 长整型 8个字节
Long直接量必须以L或者l结尾
Long a =10000000;//错误
Long a =10000000l;//正确
运算时若有可能溢出,建议在第一个数字后加L。
System.currentTimeMillis()用于获取从1970.1.1零时到此时此刻的毫秒数
⦁ double:浮点型,8个字节
默认的浮点直接量为double型
表示为float需要在加F或者f后缀。
Double和float在运算时可能出现舍入误差
⦁ Boolean:只能赋值为true和false
⦁ char 字符编码 2个字节
采用Unicode字符集编码
表现的形式的字符char,实质上是码int
(ACII码: ‘a ’---64 ‘A’--65)
字符直接量必须放在单引号中,只能有一个。
特殊符号需要用\来转移
⦁ 基本数据类型间的转换
基本数据类型从小到大:byte,short,int,long,float,double
自动转换:从小转到大
强制转换:从大转到小
两个规则:
1 整数直接量可以直接赋值给byte,short,char,但不能超出范围。
2 Byte,short,char型数据参与运算时,先一律转换为int再运算。
给变量赋值
1) 给变量赋一个固定的值
2) 接收用户输入的值 scanner
3) 系统随机的值
Scanner用法
import java.util.Scanner;
Scanner scan=new Scanner(System.in);
Int a=scan.nextInt();
练习 收银台程序
package day03;
import java.util.Scanner;
public class cash {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.println("请输入商品单价");
double price=scan.nextDouble(); //接收单价
System.out.println("请输入购买的商品数量");
int num=scan.nextInt(); //接收数量
double total=price*num; //计算应付总金额
System.out.println("请输入收款金额");
double cash=scan.nextDouble(); //接收收款金额
System.out.print("您的应付总金额为"+total+"元,");
if(total>cash){ //付款不够
System.out.println("实际付款金额不足,还差"+(total-cash)+"元。");
}
else if(total==cash){ //正好付清
System.out.println( "实际收款"+cash+"元");
}
else if(total
网友评论