标签:case Java int 文档 user department array id 考试
一、笔试题部分
一、Mysql笔试题
列名 |
数据类型 |
长度 |
是否为空 |
备注 |
id |
int |
4 |
否 |
ID,主键 |
name |
varchar |
12 |
是 |
姓名 |
age |
int |
3 |
是 |
年龄 |
bir |
datetime |
|
是 |
生日 |
salary |
decimal |
10,2 |
是 |
薪水 |
dep_id |
int |
4 |
是 |
部门ID |
1.按照上述表用sql语句创建数据库company,创建表user
create database company;
use company;
create table `user` (`id` int(4) primary key not null comment 'ID,主键',`name` varchar(12) comment '姓名',`age` int(3) comment '年龄',`bir` datetime comment '生日',`salary` decimal(10,2) comment '薪水',`dep_id` int(4) comment '部门ID');
列名 |
数据类型 |
长度 |
是否为空 |
备注 |
id |
int |
4 |
否 |
ID,主键 |
name |
varchar |
10 |
是 |
部门名称 |
2.按照上述表用sql语句创建表department
create table `department` (`id` int(4) not null primary key comment 'ID,主键',`name` varchar(10) comment '部门名称');
3.插入测试数据到user表
insert into `user` values(1,'张三',24,'2010-10-10',5000.00,1),(2,'李四',25,'2012-12-12',6500.00,2),(3,'王五',25,'2011-09-09',6500.00,3),(4,'赵四',27,'2013-11-11',7000.00,3);
1 |
张三 |
24 |
2010-10-10 |
5000.00 |
1 |
2 |
李四 |
26 |
2012-12-12 |
6000.00 |
2 |
3 |
王五 |
25 |
2011-09-09 |
6500.00 |
3 |
4 |
赵四 |
27 |
2013-11-11 |
7000.00 |
3 |
4.插入测试数据到department
insert into `department` values(1,'研发部'),(2,'市场部'),(3,'行政部');
5.查询行政部里的员工有哪些?写出 in子查询和inner join .... on ...内联接查询的sql语句
select * from `user` where `dep_id` in (select id from `department` where `dep_id` = 3);
select * from `user` inner join `department` on `user`.dep_id = `department`.id where dep_id = 3;
6.统计各部门的人数各有多少人,显示部门名称、人数字段
select `department`.`name`,count(*) from `department` inner join `user` on `department`.id = `user`.dep_id group by `department`.`name`;
7.写出五个聚合函数的关键字
max(),min(),count(),avg(),sum()
8.查询员工表和部门表里名字里带四字的员工名称和部门名称字段
select `user`.`name`,`department`.`name` from `user` inner join `department` on `user`.`name` like '%四%' group by `user`.`name`;
9.查询员工表和部门表按照年龄降序排列,显示员工姓名,年龄,部门名称字段
select `user`.`name`,`age`,`department`.`name` from `user` inner join `department` on `user`.dep_id = `department`.id order by age desc;
10.查询员工表和部门表并做关联关系,显示员工姓名,年龄,出生日期,薪水,部门名称字段,按id升序排序,并只显示前三条纪录
select `user`.`name`,`user`.age,`user`.bir,`user`.salary,`department`.`name` from `user` inner join `department` on `user`.dep_id = `department`.id order by `user`.id asc limit 3;
二、Html5和Css3笔试题
1.浮动解决父级边框塌陷有几种方法,分别是什么?各有什么特点?请详细说明
- 1.浮动元素后面加空div
- 2.设置父元素的高度
- 3.父级添加overflow属性
- 4.父级添加伪类after ---- 推荐
.clear:after {
content: '';/*在clear类后面添加内容为空*/
display: block;/*把添加的内容转化为块元素*/
clear: both;/*清除这个元素两边的浮动*/
}
2.绝对定位特点、相对定位特点、固定定位特点
相对于他原来的位置进行移动 还保留原来的位置,后面的盒子仍然以标准流的方式对待它。(不脱标,保留原来的位置)
如果父级元素没有设置定位,则相对于浏览器为准进行移动 完全不占原来的位置(完全脱标)
如果父元素有定位(相对、绝对、固定),则以最近的一个带有定位的父级为准进行移动
以浏览器的可视区域为参照点移动元素 固定定位不在占有原先的位置(脱标) 必须有宽度
三、Java基础笔试题
1.switch的小括号表达式里可以用哪几种数据类型?
byte, short, char, int,enum,String
2.try-catch-finally catch块里有return时,会执行finally里的内容吗?执行的执行顺序详细说明一下
会,先执行finally代码块最后执行return
3.Java里的命名规范具体有哪些?(包括变量名、方法名、包名、项目名、类名、接口、枚举等...包括编写代码规范)
命名使用驼峰命名法
类名第一个字母大写后续使用驼峰命名
包名全小写,一般采用顶级域名作后缀如com
接口命名采用形容词或动词来描述接口
4.父子类继承时,子类不能继承父类的什么东西
私有属性
5.阅读下列代码,回答问题
String num="123";
int one=Integer.parseInt(num);//把num转换成整型数字
int two=456;
String numTwo=String.calueOf(two);//把two转换成字符串
6.StringBuffer和StringBuilder区别?for循环和foreach循环区别?
StringBuffer是线程安全的,而 StringBuilder不是
for循环是通过 生成 数组的索引下标 循环遍历数组的每一个数据元素
forEach是 JavaScript定义的数组的函数方法 通过 JavaScript底层程序 循环遍历数组的数据元素
7.使用throws和throw关键字,编写自定义异常时的步骤
定义一个类继承于Exception
方法名后声明
方法体内抛出
8.利用二重循环编写一个冒泡排序算法
//升序
for (int i = 0; i < array.length - 1; i++) {
for (int j = 0; j < array.length - i - 1; j++) {
if (array[j] > array[j + 1]) {
int temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
//降序
for (int i = 0; i < array.length - 1; i++) {
for (int j = 0; j < array.length - i - 1; j++) {
if (array[j] < array[j + 1]) {
int temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
二、机试题部分
一、Java部分
1.编写代码--获得当前系统时间,并输出格式为yyyy-MM-dd hh:mm:ss
Date date=new Date();
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println(format.format(date));
2.编写代码--输入一串字符串,再输入一个字符,判断该字符出现的次数
Scanner input = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = input.next();
System.out.print("请输入要查找的字符:");
String search = input.next();
int count = 0;
for (int i = 0; i < str.length(); i++) {
if (str.substring(i, (i + 1)).equals(search)) {
count++;
}
}
System.out.println("\"" + str + "\"" + "中包含" + count + "个\"" + search + "\"。");
3.编写代码--输入一串字符串#@%530113198505171146@@#,提取其中的数字530113198505171146
String str="#@%530113198505171146@@#";
String regEx = "[^0-9]";
Pattern pattern = Pattern.compile(regEx);
Matcher matcher = pattern.matcher(str);
System.out.println(matcher.replaceAll("").trim());
4.编写代码--利用switch 从控制台接收一个小时数字,当时间是从0-11时时控制台输出上午,12时输出中午,13-18时输出下午,18-23输出晚上
Scanner input = new Scanner(System.in);
int num = input.nextInt();
switch (num) {
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
case 7:
case 8:
case 9:
case 10:
case 11:
System.out.println("上午");
break;
case 12:
System.out.println("中午");
break;
case 13:
case 14:
case 15:
case 16:
case 17:
case 18:
System.out.println("下午");
break;
case 19:
case 20:
case 21:
case 22:
case 23:
System.out.println("晚上");
break;
default:
System.out.println("时间不存在!");
break;
}
标签:case,
Java,
int,
文档,
user,
department,
array,
id,
考试
From: https://www.cnblogs.com/ynxiyan/p/17090397.html