1.请说出JDK,JRE,JVM三者之间的关系
JDK是java软件开发工具包,包含JRE和JVM
JRE是指java运行环境,包含JVM虚拟机和java核心类库
JVM是java虚拟机
2.请给出JDK安装完成在任意目录下运行Java -version的效果图
3.常用的几个命令行操作都有哪些?(至少4个)
常用的DOS命令有:dir,cd,cd目录1\目录2,cd\,cd..,cle,exit
4.控制台输出以下内容:
姓名:你自己的名字
性别:xxx
爱好:xxx
座右铭:xxxx
5.画出基本数据类型变量之间自动类型提升的运算规则图
byte->short->int->long->float->double
char->int->float->long->float->double
6.说明基本数据类型变量之间强制类型转换的使用规则和强转可能出现的问题。
规则:将取值范围大(或容量大)的类型强制转换成取值范围小(或容量小)的类型。
强制类型转换,可能会导致精度损失(降低或溢出)。
容量小的数据类型变量→容量大的数据类型变量,不会丢失原有信息。
容量大的数据类型变量→容量小的数据类型变量,可能会丢失原有信息。
7.判断是否能通过编译
byte b = 5; short s = 3; short t = s + b; ?
答:不能,因为s+b后会提升为int类型,byte、short和char类型数据参与运算均会自动转换为int类型。所以将取值范围大的int转为取值范围小的byte需要强制类型转换才可以通过编译强制类型转换,可能会导致精度损失(降低或溢出)。
8.标识符的命名规则需要注意哪几点?
由字母、数字、下划线“_”、美元符号“$”,第一个字符不能是数字。
不能使用java中的关键字作为标识符。
标识符对大小写敏感(区分大小写)。
9.基本数据类型有哪几类?包含String吗?
八种:byte,short,char,int,float,long,double,boolean 不包含String
10.整型默认的是什么类型,浮点型(实数型)默认的是什么类型?
int、double
11.对于类名,方法名,常量名我们习惯如何格式来命名?
习惯用单词首字母大写,且与之相关的单词来命名
12.定义一个变量需要注意么?
变量的定义赋值可以分开写
在同一行定义多个同一种数据类型的变量,中间使用逗号隔开
在同一对花括号中,变量名不能重复
变量在使用之前,必须初始化赋值
java中整数默认类型是int类型,浮点数默认是double类型
定义long类型的变量时,需要在整数的后面加L(大小写均可,建议大写)
定义float类型的变量时,需要小数的后面加F(大小写均可,建议大写)
13.定义float f=3.4;是否正确?
不正确,3.4后没有加F,浮点型默认的类型是double,类型不兼容
14.为抵抗洪水,战士连续作战89小时,编程计算共多少天零多少小时?
15.今天是周二,100天以后是周几?
16.比较 + 与 +=
short s1 = 1; s1 = s1 + 1;有什么问题?
s1 + 1会提升为int型,与大转小会报错。
short s1 = 1; s1 += 1;有什么问题?
没问题,扩展的赋值运算符隐含了强制类型转换。
17.根据运算符的功能,我们把运算符分成哪几类?
算术运算符 赋值运算符 比较运算符 逻辑运算符 三元运算符 位运算符
18.“&”和“&&”的异同
&&和&的作用相同,但是&&有短路效果。
&:无论左边为真假,右边都要执行。
&&:如果左边为真,右边执行,如果左边为假,右边不执行。
19.程序输出:
结果为:z = 44 (要注意y = true结果为true ,“=”是赋值,不是y等于ture)
20.自己定义一个int型三位数的变量并赋值(例如:int a = 123),先将这个变量拆分出个,十,百位,再使用三元运算符将这三个数中的较大数实现。
21.写出输出结果:
class Demo{
public static void main(String[] args){
int a=3,b=8;
int c=(a>b)?a++:b++;
System.out.println("a="+a+"\tb="+b+"\tc="+c);
int d=(a>b)?++a:++b;
System.out.println("a="+a+"\tb="+b+"\td="+d);
int e=(a<b)?a++:b++;
System.out.println("a="+a+"\tb="+b+"\te="+e);
int f=(a<b)?++a:++b;
System.out.println("a="+a+"\tb="+b+"\tf="+f); }}
输出结果为:a = 3 b = 9 c = 8
a = 3 b = 10 d = 10
a = 4 b = 10 e = 3
a = 5 b = 10 f = 5
22.2019年1月1日起,国家推出新的个人所得税政策,起征点上调值5000元。也就是说税前工资扣除三险一金(三险一金数额假设是税前工资的10%)后如果不足5000元,则不交税。如果大于5000元,那么大于5000元的部分按梯度交税,具体梯度比例如下:
0 ~ 3000元的部分,交税3%
3000 ~ 12000元的部分,交税10%
12000 ~ 25000的部分 , 交税20%
25000 ~ 35000的部分,交税25%
35000 ~ 55000的部分,交税30%
55000 ~ 80000的部分,交税35%
超过80000的部分,交税45%
比如:黑马某学员入职一家企业后,税前工资是15000,则他每月该交个税的部分是15000-1500-5000=8500元,个税缴纳数额是3000×3%+5500×10%=640元。税后工资12860元。
请完成一个个税计算程序,在用户输入税前工资后,计算出他对应的纳税数额,以及税后工资为多少?
23.输入三个int型的数据,放入到a,b,c三个变量中去,使用条件结构与交换逻辑将这三个变量中的值从小到大排列。
24.有一个容量为10L的空水桶。水桶的上面开始往里灌水,同时下面开始往出流水。第一分钟灌水的速度是1L/min,第二分钟灌水的速度是2L/min,第三分钟灌水的速度是3L/min,以此类推。而流水的速度固定是3L/min。那么几分钟之后,水桶里能保持灌满水的状态?
25.某小伙想定一份外卖,商家的优惠方式如下:鱼香肉丝单点24元,油炸花生米单点8元,米饭单点3元。订单满30元8折优惠。鱼香肉丝优惠价16元,但是优惠价和折扣不能同时使用。那么这个小伙要点这三样东西,最少要花多少钱?