每日一刷:java基础知识+sql
Posted !0 !
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每日一刷:java基础知识+sql相关的知识,希望对你有一定的参考价值。
JAVA基础
题解:A、start()方法时执行线程
B、join()方法是停止当前正在运行的线程,运行该线程,知道结束
C、run()方法是线程所执行的方法体
D、synchronized是同步代码块加锁解锁用的
题解:类方法是属于整个类的,而实例方法是属于类的某个对象的。
(1) 类方法中不能引用对象变量;
(2) 类方法中不能调用类的对象方法;
(3) 在类方法中不能使用super、this关键字。
(4) 类方法不能被覆盖。
题解:最简单的方法就是套两个值。这题没很大意义,一般都是计算时间复杂度,是计算个大概值,不用非常准确
题解:题目没说jdk版本,差评
A、jdk8以后有默认方法和静态方法还有私有方法
C、抽象类中的方法是可以有方法体的。JDK1.8之后,接口中的方法也可以有方法体,用default关键字修饰方法。
题解:
i= 1, 2, 3, 4, 5, 6, 7, 8
k=1, 3, 6, 10, 15, 21, 28, 36
用等差数列求和,可知
2
∗
n
=
i
2
+
i
2*n=i^2+i
2∗n=i2+i,时间复杂度只算最高项,所以是
O
(
n
)
O(\\sqrt n)
O(n)
题解:普通类(外部类):只能用public、default(不写)、abstract、final修饰。
(成员)内部类:可理解为外部类的成员,所以修饰类成员的public、protected、default、private、static等关键字都能使用。
SQL语句
SQL51:查找字符串 10,A,B 中逗号,出现的次数cnt
//用原来的长度减去用空替换成`,`的长度
select (length("10,A,B") - length(replace("10,A,B",",","")));
//substr为负数时,则是从右往左截取
select first_name
from employees
order by substr(first_name, -2);
//group_concat()函数将group by产生的同一个分组中的值连接起来,返回一个字符串结果
//语法:group_concat( [distinct] 要连接的字段 [order by 排序字段 asc/desc ] [separator '分隔符'] )
select dept_no,group_concat(emp_no) employees
from dept_emp
group by dept_no;
SQL54:查找排除当前最大、最小salary之后的员工的平均工资avg_salary
//方式一:
select (sum(salary) - max(salary) - min(salary)) / (count(*) - 2)
from salaries
where to_date = '9999-01-01';
//方式二:子查询
select avg(a.salary) avg_salary
from salaries a
where a.to_date='9999-01-01'
and a.salary not in (select max(b.salary) from salaries b where b.to_date='9999-01-01')
and a.salary not in (select min(b.salary) from salaries b where b.to_date='9999-01-01');
SQL55:分页查询employees表,每5行一页,返回第2页的数据
//LIMIT 语句结构: LIMIT X,Y (Y :返回几条记录X:从第几条记录开始返回(第一条记录序号为0,默认为0))
select *
from employees
limit 5,5;
以上是关于每日一刷:java基础知识+sql的主要内容,如果未能解决你的问题,请参考以下文章