java第十次面试题
一、给定一个字符串,把字符串内的字母转换成该字母的下一个字母,a换成b,z换成a,Z换成A,如aBf转换成bCg,字符串内的其他字符不改变,给定函数,编写函数。
public static void main(String[] args) {
Test06 t = new Test06();
System.out.println(t.nextString("aBxyZ"));
}
public String nextString(String data) {
char[] arr = data.toCharArray();
for (int i = 0; i < arr.length; i++) {
if (arr[i] == 'z' && i == arr.length - 1) {
arr[i] = 'a';
} else if (arr[i] == 'Z' && i == arr.length - 1) {
arr[i] = 'A';
} else {
arr[i] = (char) (arr[i] + 1);
}
}
return String.valueOf(arr);
}
二、写一个程序,要求功能:求出用1,2,5这三个数不同个数组合的和为100的组合个数。
public class Test07 {
static int i, j, k, n = 0;
public static void main(String[] args) {
for (i = 0; i <= 100; i++) {
for (j = 0; j <= 50; j++) {
for (k = 0; k <= 20; k++) {
if (1 * i + 2 * j + 5 * k == 100) {
n++;
}
}
}
}
System.out.println("共有" + (n++) + "个组合。");
}
}
三、表结构如下
MyTable:
日期
日产
1 3。3333
2 4。2222
3 1。5555
4 9。8888
5 ………
要求用SQL语句生成如下查询
日期
日产
累计日产
1
3。3333
3。3333
2
4。2222 7。5555
3
1。5555 9。0000
4
9。8888 18。8888
5………
提示:2日累计日产=1日累计日产+2日累计日产
3日累计日产=2日累计日产+3日累计日产
SELECT a.`empno` '日期',a.`sal` '日产',
SUM(b.`sal`) AS '累计日产' FROM MyTable a
JOIN MyTable b ON a.`empno`>=b.`empno`
GROUP BY a.`empno`,a.`sal`
四、
已知公司的员工表EMP(EID, ENAME, BDATE, SEX, CITY),
部门表DEPT(DID, DNAME, DCITY),
工作表WORK(EID,DID,STARTDATE,SALARY)。各个字段说明如下:
EID——员工编号,最多6个字符。例如A00001(主键)
ENAME——员工姓名,最多10个字符。例如SMITH
BDATE——出生日期,日期型
SEX——员工性别,单个字符。F或者M
CITY——员工居住的城市,最多20个字符。例如:上海
DID——部门编号,最多3个字符。例如A01 (主键)
DNAME——部门名称,最多20个字符。例如:研发部门
DCITY——部门所在的城市,最多20个字符。例如:上海
STARTDATE——员工到部门上班的日期,日期型
SALARY——员工的工资。整型。
请使用ORACLE的sql*plus 完成下列的操作
1、创建表EMP,DEPT,WORK,并定义表的主键和外键。
2、向每个表中插入适当的数据。例如:插入三条部门的数据,分别为每个部门插入两条员工数据
3、查询“研发”部门的所有员工的基本信息
4、查询拥有最多的员工的部门的基本信息(要求只取出一个部门的信息),如果有多个部门人数一样,那么取出部门编号最小的那个部门的基本信息。
5、显示部门人数大于5的每个部门的编号,名称,人数
6、 显示部门人数大于5的每个部门的最高工资,最低工资
7、列出员工编号以字母P至S开头的所有员工的基本信息
8、删除年龄超过60岁的员工
9、为工龄超过10年的职工增加10%的工资
答案如下:
1.
create table emp1(
eid number(6),
ename varchar2(20),
bdate date,
sex char(2),
city varchar2(20)
);
create table dept1(
did number(6),
dname varchar2(20),
dcity varchar2(20)
);
create table work1(
eid number(6),
did number(6),
startdate date,
salary integer
);
alter table emp1
add constraint emp1_eid_pk primary key(eid);
alter table dept1
add constraint dept1_did_pk primary key (did);
alter table work1
add constraint work1_eid_fk foreign key(eid) references emp1(eid);
alter table work1
add constraint work1_did_fk foreign key (did) references dept1(did);
2.
往emp1 表添加数据
insert into emp1 (eid,ename, bdate)
select empno, ename, hiredate
from emp;
update emp1
set (sex,city) =('男','北京'); ( 这种写法是错误的,只有利用子查询更新表,可以这样)
update emp1
set sex='男' , city='北京';
往dept1表添加数据
insert into dept1(did,dname)
select deptno,dname
from dept;
update dept1
set dcity='北京';
/把其中的一个部门改成开发,为了后面练习用
update dept1
set dname='developer'
where did=10;
往work1表添加数据
insert into work1 (eid,did,startdate,salary)
values(7369,10, '', 2500);
insert into work1 (eid,did,startdate,salary)
values(7499,10, '', 2501);
insert into work1 (eid,did,startdate,salary)
values(7521,10, '', 2500);
3.
select emp1.eid, emp1.ename,dept1.dname,work1.salary
from emp1,dept1,work1
where emp1.eid=work1.eid
and dept1.did=work1.did;
4.
select max(e.renshu), d.did
from (select did,count(eid) renshu
from work1
group by did)e,dept1 d
where d.did=e.did
group by d.did;
5.
select e.*, d.did, d.dname, d.dcity
from (select did,count(eid)
from work1
group by did
having count(eid)>5)e,dept1 d
where d.did=e.did;
6.
select max(salary), min(salary)
from work1
having count(eid)>5
group by did;
7.
select ename
from emp1
where ename like 'S%'
or ename like 'P%'
8.
delete from emp1
where months_between(sysdate, bdate)/12>60;
9.
update work1
set salary= salary*1.1
where months_between( sysdate ,startdate)/12>10;
java第十次面试题的更多相关文章
- Java程序员面试题集(136-150)(转)
转:http://blog.csdn.net/jackfrued/article/details/17740651 Java程序员面试题集(136-150) 摘要:这一部分主要是数据结构和算法相关的面 ...
- Java程序员面试题集(71-85)(转)
转:http://blog.csdn.net/jackfrued/article/details/17566627 Java程序员面试题集(71-85) 摘要:这一部分主要包括了UML(统一建模语言) ...
- Java程序员面试题集(51-70)(转)
转:http://blog.csdn.net/jackfrued/article/details/17403101 Java程序员面试题集(51-70) 摘要:这一部分主要讲解了异常.多线程.容器和I ...
- Java程序员面试题集(1-50)(转)
转:http://blog.csdn.net/jackfrued/article/details/17339393 下面的内容是对网上原有的Java面试题集及答案进行了全面修订之后给出的负责任的题目和 ...
- J2EE进阶(十四)超详细的Java后台开发面试题之Spring IOC与AOP
J2EE进阶(十四)超详细的Java后台开发面试题之Spring IOC与AOP 前言 搜狐畅游笔试题中有一道问答题涉及到回答谈谈对Spring IOC与AOP的理解.特将相关内容进行整理. ...
- 北京一家JAVA开发公司面试题(留给后人)
1.jsp有哪些内置对象?作用分别是什么? 2.描述一下servlet的生命周期和基本架构. 3.多线程有几种实现方法,都是什么? 同步有几种实现方法,都是什么? 4.作用域public priv ...
- JAVA第十次作业
JAVA第十次作业 (一)学习总结 1.用思维导图对java多线程的学习内容进行总结. 参考资料: XMind. 2.下面是一个单线程实现的龟兔赛跑游戏. public class TortoiseH ...
- java高级工程师开放面试题集<二>
临近年关,不少人蠢蠢欲动,有童鞋问我java后端面试会面试什么? 作为一个java后端老鸟,跌打滚爬多次被面试和面试别人,总结了一些经验,希望对大家有所帮助. 特别说明,仅仅针对工作两年以上的java ...
- 各大公司java后端开发面试题
各大公司Java后端开发面试题总结 ThreadLocal(线程变量副本)Synchronized实现内存共享,ThreadLocal为每个线程维护一个本地变量.采用空间换时间,它用于线程间的数据隔离 ...
随机推荐
- 表单验证—html5新特性表单验证
一.表单 <body> <section id="register"> <div><img src="images/logo.j ...
- 字节跳动冬令营网络赛 Solution
A:Aloha Unsolved. B:Origami Unsolved. 题意: 初始的时候有一张纸,可以从左边往右边折叠,或者从右边往左边折叠 每次折叠的长度不能超过现有宽度,最后折叠到长度为1 ...
- C Strange Sorting
C. Strange Sorting time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- 20154312曾林 - Exp1 PC平台逆向破解
1.逆向及Bof基础实践说明 1.1-实践目标 对象:pwn1(linux可执行文件) 目标:使程序执行另一个代码片段:getshell 内容: 手工修改可执行文件,改变程序执行流程,直接跳转到get ...
- Python 在字符串中处理html 和xml
问题: 想将HTML 或者XML 实体如&entity; 或&#code; 替换为对应的文本.再者,你需要转换文本中特定的字符(比如<, >, 或&). 解决方案: ...
- 2017-2018-2 20165207实验二《Java面向对象程序设计》实验报告
2017-2018-2 20165207实验二<Java面向对象程序设计>实验报告 课程:Java程序设计 班级:1652 姓名:李天林 学号:20165207 实验日期:2018年4月1 ...
- Java与Flex学习笔记(20)---将flex页面嵌入到jsp页面中
如果我们只需要用到Flex的一部分功能,例如播放器功能,我们可以单独把Flex页面嵌入到Jsp页面中.要想实现此功能,需要下载一个工程,将其覆盖在服务器根目录下即可.你可以在次下载:FlexModul ...
- 常用php操作redis命令整理(四)SET类型
SADD 将一个或多个member元素加入到集合key当中.(从左侧插入,最后插入的元素在0位置),集合中已经存在TK 则返回false,不存在添加成功 返回true <?php var_dum ...
- personal evolution
自我清醒 认知自我的行为和心理 你确定你自己是出于理智而发出某种行为? 首先需要确定哪些是人的天性 认知失调理论 从众效应 晕轮效应 霍桑效应 马太效应 期望效应 刻板效应 破窗效应 安排思维 安排闲 ...
- IDEA类和方法注释模板设置
在开发中使用idea的注释总结:由于IDEA自带的注释模板不是太好用,所以整理一下适用于自己的模板: 一.首先我们来设置IDEA中类的模板:(IDEA中在创建类时会自动给添加注释) 1.File--& ...