Java
工程
路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理
师面试题
Java 工程面师师师师
1、下面的代片段会出什,码码码码码码码码码
String s = " Hello ";
s += " World ";
s.trim( );
System.out.println(s);
2、下面的代片段中,行码码码码码码A和行B所的代有什区呢,码码码码码码码码码码码码public class ConstantFolding {
static final int number1 = 5;
static final int number2 = 6;
static int number3 = 5;
static int number4= 6;
public static void main(String[ ] args) {
int product1 = number1 * number2; //line A
int product2 = number3 * number4; //line B
}
}
3、以下代会出什码码码码码码
int m=3, n=4, total=0;
public void comb(String str)
{
for(int i=1;i
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
和,写出表构和的码码码码码码码码码码码码码码码码码码码码码sql码束条件:
一、性能要求高,但是存空大,可接受数据冗余码码码码码码码码码码码码二、不使用like ,不使用数据的字段全文索码码码码码码码码
三次表构如下 码码码码码
码 次基本信息表tbl_train number_info
字段名数据型注 码 码码
train_numberID int PK 码次id
train_number varchar 码次名称
start_station varchar 起始站
end_station varchar 码点站
starttime time 码码码码
endtime time 码码码点
7、java的数据构有哪些,如果使用数,码码码码码码码码码码码码码如何衡是用无序的数码码码码码码码码
码码码码码是有序的数呢,
答案:
师师1、
正确出是码码码” Hello World “。
由于字符串前后都有空格,因有些人可能会果是码码码码码码码码码码码码”Hello
World”码码码码码码码码码码码码码码码码码码码码码。那,个目想要考察的是,面可以延伸
1. 码码码字符串象,String Object码码码,是非可的,immutable码码码码码,,个目容易迷惑人的地方在s.trim( )码一行。
2. 码码码码码码码码码码码码码码码码码码码码理解象引用和不可达象会由垃圾回收器收集。
码码码码码码码码码码码码码码码码码着个目,可以考察哪些概念呢,
上面的代中一共会生成几个字符串象,什候码码码码码码码码码码码码码码码码码码码码些象会成不可达象从而被垃圾回收器回收。码码码码码码码码码码码码码码码码码码码码码
最好的解方式是通一个表来明,如下:码码码码码码码码码码码码码码码码码
师师2
考察与运行的理解,在行码码码码码码码码码码码码码A码码码的代中,product码码码的是在师师期码算的,行B码是在运行师码算的
码码上,使用Java码码码码码码码反器,例如,jd-gui码码,来反ConstantFolding.class文件的,可以看到一个已是常量了。码码码码码码码码码码码码码码码
public class ConstantFolding{
static final int number1 = 5;
static final int number2 = 6;
static int number3 = 5;
static int number4 = 6;
public static void main(String[ ] args)
{
int product1 = 30;
int product2 = number3 * number4;
}
}
延伸,有哪些是在理的,如码码码码码码码码码码码码码码码码码
java码码码码码码码里的泛型是在构造的,
方法重:个是生在的。方法重也被称码码码码码码码码码码码码码码码码码码码码码码码码多,因器可以根据参数的型来使用哪个方法。码码码码码码码码码码码码码码码码码码码码码码码码码码码 – 码码码码码码码码码码码码承生在,因它是静的
师师3
主要考察和循的理解码码码码码码码码码
码出:
1 1 1
1 1 2
1 1 3
1 1 4
1 2 1
。。。。
4 4 4
师师4
在Java码码码码码中,最好的就是用JDK中StringBuffer码码码码码码的反方法,它不码码码码码码码码速度快,效率高,而且知道如何理unicode码代理(surrogate pairs)。其它方案基本上都可以忽略掉。
public class JdkReverser implements Reverser {
public String reverse(String str) {
if ((null == str) || (str.length() <= 1)) {
return str;
}
return new StringBuffer(str).reverse().toString();
}
}
码码码码的
public String reverse(String str) {
if ((null == str) || (str.length() <= 1)) {
return str;
}
return reverse(str.substring(1)) + str.charAt(0);
}
延伸:他代中什地方有码码码码码码码码码码码码码bug,即使没有。或者代怎会,码码码码码码码他的答案至少可以引出一个于如何理空的来。码码码码码码码码码码码码码码码
比如
空字符,null, 1字度字符做没做理码码码码码码码码码码
码码码码码码码码码码码码码码码码什会返回一下,或抛出以下异常
返回null
“”返回
抛出NullPointerException
抛出IllegalArgumentException
师师5
考察程基本概念的理解码码码码码码码码码码
可以通如下几方式:码码码码码码码码
• 码承Thread 码
• 码码Runnable 接口
• 使用Executor framework (码码码码码码码码会建一个程池) 码码码码码码码,通程池来建更有效率
推荐最好使用Runnable码码码码码码码码码码接口,你的就不必承Thread码,不然当你需要多重承的候,就无法理码码码码码码码码码码码
码码码码程的状包括
• 码码可行(Runnable):当用码码start()方法后,一个程可行状,码码码码码码码码码码但是并不意味着他会立刻始真正地行。而是被放入程码码码码码码码码码码码码码码码池,由程度器根据程先决定何挂起行。码码码码码码码码码码码码码码码码码码码码码
• 码行中(Running):理器已在行程的代。他会一码码码码码码码码码码码码码码码码码直运行直到被阻断,或者通静方法码码码码码Thread.yield()自行放弃行的机码码码码会,考到景切所来的,码码码码码码码码码码码码码yield()方法不被常用。码码码码码码码码• 等待中(Waiting):程由于等待码码码码码码I/O等外部程的理果而于被码码码码码码码码码码码阻断的状,用码码码码currObject.wait( )方法会使得当前程入等待状,码码码码码码码码直到其它程用码码码码currObject.notify() 或者currObject.notifyAll() 。• 睡眠中(Sleeping):重方法码码码Thread.sleep(milliseconds),Thread.sleep(milliseconds, nanoseconds)可以迫使Java码码码码码码码码码码码码程入睡眠状,挂起,。
• 由于I/O阻塞,Blocked on I/O,:当I/O条件生化,例如取码码码码码码码码码码了几个字的数据,会迁移到可行状。码码码码码码码码码码码码码码码
• 由于同阻塞中,步Blocked on synchronization,: 当取之后会入码码码码码码码码码行中状。码码
Thread.State 枚型包含了码码码码码码Java虚机支持的全部的程状型码码码码码码码码码码码码码码可延伸程状的解,以及哪个枚了程状码码码码码码码码码码码码码码码码码码码码码码
码码6
从性能出,不考存的限制码码码码码码码码码码
建立次索引表码码码码码
比如z61,可索引码码码码 z z6 z61
表构如下码码码码
码 次索引表tbl_ train number_index
id int pk 流水号
index varchar 索引要在字段建立索引 码码码码码码码
train_numberID int fk 码次ID
select t.* from tbl_ train number_index as I , tbl_ train number_info as t where
i.index = ? and t. train_numberID = i. train_numberID
当然用join也可以
主要考察是否能想到通建索引表码码码码码码把like码码码码码码码码码码码化在索引字段上的=码码师师7
数,无序数、有序数,,,列,表,,二码码码码码码码码码码码码码码码码码码码码码码码码码码码码码码码码叉、,黑、23
4数,、哈希表、堆、码
大部分不会到和码码码码码
延伸:码码码
码码码和在java中有,,无,,自己怎码码码码码码码码码码码码码码码码
码码码的只需要建一个码码码码Node码码码码象,里面包含一个指向叶子点的ArrayList。package bigo;
import java.util.ArrayList;
import java.util.List;
public class Node {
private String name;
private List children = new ArrayList( );
private Node parent;
public Node getParent( ) {
return parent;
}
public void setParent(Node parent) {
this.parent = parent;
}
public Node(String name) {
this.name = name;
}
public void addChild(Node child) {
children.add(child);
}
public void removeChild(Node child) {
children.remove(child);
}
public String toString( ) {
return name;
}
}
可延伸,什数据可以用来表码码码码码码码码码码码码码码码码码码码码示,是不是,
只要数据元素的码码码码码码码码码码码码码码码码码码码码码码码系可以表示成点和的网状构的,就可以用师来表示。码码码码码码码码码码码码码码码码码码码码码是一特殊的,它的所有点都只能有一个父点。和不同的是,的码码码码码码码码码码码码码码码码码码码码码码码码码码码码形状是由或者的抽象来决定的。码码码码码码码码码码码码码码码码码码码码码码的比,有很多第三方里提供了,例如JUNG,JGraphT
有序数最大的点在于码码码码码码码码n码码码码码码码码码码码码码码码比大的候,搜索元素所花的O(log n)比无序素码码码码码码码所需要的O(n)码码码码码码码码码码码码要少很多。有序数的缺点在于插入的码码码码码码码比大,一般是O(n)码码码码码码码码码码码码码,,因所有比插入元素大的都要往后移。而无序数的码码码码码码码码码码码码码码码码码码码码码码插入是常量,也就
是,码码码码码码码码码码码码码码码码码码码码插入的速度和元素的数量无。所以,如
何去码码码码码码码码码码码码码码码码码码码码码码是取决于的使用情况。你需要考下面几个。你的程序是码码码码码码码码码码插入/码码码码码码码码码码码除的操作多,是找的操作多,数码码码码码码码码码码码码码码码码码码里最多可能存多少元素,排序的率是多少,以及你的性能基准码码码码码码码码码码的果是怎的,
码码码码码码码码码码性能,可延伸你大O码码码码码码码码码个符号有什了解呢,你是否可以根据不同的数据构出一些列码码码码码码码码码码子来,
大O符号可以表示一个算法的效率,也可以用来描述当数据元素增加码,最坏情况下的算法的性能。大O符号也可以用来衡量的性能,例如内存消耗量。有候你可能会了码码码码码码码码码码码码码码码码码码码码码码码码码码码码减少内存使用量而一个比慢的算法。大O符号可以表示在大量数据的情况下程序的性能。不,于程序在大量数码码码码码码码码码码据量下的性能的量,码码码码码码码码码码码码码码码码码码唯一比的方式是行用大的
数据集来行性能基码码码码码码码码码码码码码码码码码码准,可以把一些在大O码码码码度
分析
定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析
里没有考到的情况包含码码码码码码码码码码码码码码码码码码码去,例如在虚内存使用比多的候系码码码码码码码码码码码码码码码码码会生的情况。然基准比大O符号表示的果更码码码码码码码加,但是它不适用于段,所以在个候大码码码码码码码码码码码码码码O码码码码度分析是最合适的。
各码码码码码码码码码码码码码码码码码码码数据构在搜索,插入和除算法上的性能都可以用下面方式表示:常量度码码码O(1),性度码码码码码O(n),数度码码码码码O(log n),指数度码码码O(c^n),多式度码码码码码O(n^c),平方度码码码O(n^2)以及码
乘码码码度O(n!),里面的码码码码n都指的是数据构里的码码码码码码码码码元素的数量。性能和内存占用是可以相互码码码码码码码码码码码码衡的。下面是一些示例。
示例1:在HashMap里码码码码码码码码码码码码码码码码码码码码码找一个元素的的度是常量的,也即是O(1)。是因码码码码码码码码码码码码码码码码码码码码找元素使用的是哈希函数,并且算一个哈希码码码码码码码的是不受HashMap里的元素的个数的影响的。
示例2:性码码码码码码码码码码码码码码码码码码码码码码码码码码码码搜索一个数,列表以及表都是的度性的,也即是O(n),是码码码码码码码码码码码码码码码码码码码码找的候需要遍整个列表。也就是,如果一个列表的度是码码码码码码码码码码码码码码码码码码码码码码码码码码原来的两倍,那搜索所花的也是原来的两倍。
示例3:一个需要比数里的所有码码码码码码码码码码码码码码元素的排序算法的度是多式的,即是码码码码码码码码码码码O(n^2)。是因一个码码码码码码码码码嵌套的for循的度是码码码码码码O(n^2)。在搜素算法里有的例码码码码码码子。
示例4:二分搜索一个数或者数列表的度是数的,即是码码码码码码码码码码码码码码码码码码O(log n)。在表里一个点的度一码码码码码码码码码码码码码码码码般是O(n)。相比数表和数的码码码码码码码码码O(log n)的性能而言,随着元素数量的增码码码码码,表的O(n)的度的性能码码码码码码就比码码码码码码码码码码码码码码码码差了。数的度就是如果10个元素花码码码码码的是x码码位的,100个元素最多花码2x码码码码码位的,而10000个元素最多花码4x个码码码码码位的。如果你在一个平面坐码码码码码码码码码码码码码码码码码码码码上画出形的,你会的增没有n,元素的个数,快。