我在接受采访时问了这个问题.我认为获得最佳解决方案的唯一方法是SOF.所以问题是" 如何在java中实现自定义HashMap(假设没有这样的数据结构称为HashMap) ".我能想到的唯一答案是通过实现关联数组(但是再一次,Java没有关联数组).请问各位专家请你对这个问题有何看法?
我刚开始解决Project Eulers问题.尽管这个很简单.我想就最佳解决方案发表意见.
问题:
如果我们列出10以下的所有自然数是3或5的倍数,我们得到3,5,6和9.这些倍数的总和是23.
求出1000以下3或5的所有倍数的总和.
这是我编码的方式:
package com.problem.one.ten;
public class NaturalNumber {
public static void main(String args[]) {
int sum=0;
for(int i=0; i<1000; i++) {
if((i%3 == 0) || (i%5 == 0)){
sum += i;
}
}
System.out.println(sum);
}
}
Run Code Online (Sandbox Code Playgroud) 像我之前的问题一样,这个问题引用了Effective Java.这次我有很多子问题.
特权客户端可以借助该AccessibleObject.setAccessible()方法反射性地调用私有构造函数.如果您需要防范此操作,请修改构造函数.
究竟如何调用私有构造函数?什么是AccessibleObject.setAccessible()?
您的专家对单身人士采用什么方法?
// Approach A
public class Test{
public static final Test TestInstance = new Test();
private Test(){ ... }
.
.
.
}
// Approach B
public class Test{
private static final Test TestInstance = new Test();
private Test(){ ... }
public static Test getInstance() { return TestInstance; }
.
.
.
}
Run Code Online (Sandbox Code Playgroud)
第二种方法是不是更灵活,以防我们每次都要检查新实例或每次检查同一个实例?
如果我尝试克隆类/对象怎么办?
单元素枚举类型是实现单例的最佳方式.
为什么?怎么样?
我怀疑我遇到过阅读Effective Java.如果它是一个真正简单而直截了当的疑问,我道歉.因此,在第74项 - 明智地实施Serializable中,他说,即使在使用私有和私有领域实施一个好的信息隐藏在你的班级之后,它也很容易失去效力?无论我过去阅读过什么,所有序列化都是将对象转换为字节流形式,反序列化后保留相同的对象.如何在此过程中丢失数据隐藏?
我们有一个Perl脚本,它运行SQL并将数据放入表中.现在我们不想提供单个SQL语句,而是希望将它们串起来放在.sql文件中.我们知道我们的程序会失败,因为它需要一个单独的SQL语句,而不是它们的一大堆(也来自.sql文件).我们如何使用.sql文件(具有多个INSERT语句?).我们正在使用DBI包.
一小段代码:
$sth = $dbh->prepare("/home/user1/tools/mytest.sql");
$sth->execute || warn "Couldn't execute statement";
$sth->finish();
Run Code Online (Sandbox Code Playgroud) 尝试在INPUT文本字段中填充和格式化日期值.我在这做错了什么?
<spring:bind path="salesData.weekEndDate">
<input type="text" name="${status.expression}"
value="${fmt:formateDate pattern='MM/mm/YYYY' status.value}"
/>
Run Code Online (Sandbox Code Playgroud)
我试图计算父母下的元素数量,但它给了我一个不正确的计数.结果应该是2,其中返回我4.
我的HTML结构是:
<div style="overflow: hidden;" id="parentDiv" class="scroll">
<div id="3">
<table id="t3" class="Table">
<tbody>
<tr>
<td id="b3" class="bY"><table id="inner1" width="100%" cellpadding="3">
<tbody>
<tr>
<td class="code" id="code3" width="172"></td>
<td class="Num" id="Num3" width="50"></td>
<td colspan="2" class="Name" id="Name"></td>
</tr>
<tr>
<td class="code" width="172"></td>
<td> </td>
<td class="serial" width="110"></td>
<td class="serial" width="322"></td>
</tr>
</tbody>
</table></td>
</tr>
</tbody>
</table>
</div>
<div id="4" >
<table id="t4" class="Table">
<tbody>
<tr>
<td id="b4" class="bY"><table id="inner1" width="100%" cellpadding="3">
<tbody>
<tr>
<td class="code" id="code4" width="172"></td>
<td class="Num" id="Num4" width="50"></td>
<td colspan="2" class="Name" …Run Code Online (Sandbox Code Playgroud) 这可能听起来像一个真正的愚蠢问题,但请耐心等待:)所以我在我的代码中有一个if条件,如if ((msgBO.getEmpId().equals("") == false )) {
// do something
}我的问题是,如果我做出上述陈述,msgBO.getEmpId().equals(null) == false
它会有任何区别或这样我试图比较两个不同的东西?
我想在Windows Vista机器上练习Unix(主要是KornShell(ksh)脚本和VI编辑器).什么是最好的解决方案?我不喜欢Cygwin.所以除了Cygwin之外的其他任何东西都可以在没有重新安装操作系统的情况下提供最接近的Unix环境.
谢谢.
我一直在看这个代码的比较器.我的问题是在构造函数中初始化两个私有变量有一个特定的好处(在默认构造函数中完成).我知道第二个构造函数可用于创建具有提供值的实例.如果我这样做会有什么不同
private String sortBy = COLUMN_LAST_NAME;
private boolean ascending = true;
Run Code Online (Sandbox Code Playgroud)
如果它是一个真正简单而通用的问题,我道歉.
public class CustomComparator implements Comparator<StudentList>
{ private String sortBy;
private boolean ascending;
public CustomComparator()
{
sortBy = COLUMN_LAST_NAME;
ascending = true;
}
public CustomComparator(String sortBy, boolean ascending)
{
this.sortBy = sortBy;
this.ascending = ascending;
}
Run Code Online (Sandbox Code Playgroud) 伙计我试图在onbeforeunload事件上调用此确认函数,但它没有被调用.我在这里错过了什么?
我在body标签中调用它:<body onbeforeunload="confirmation();">
我也尝试过:<body onbeforeunload="return confirmation();">
码:
function confirmation(){
var answer = confirm('You have unsaved changes!!');
if(answer == true)
{
alert('Bye Bye!!!');
}
else{
alert('You are staying');
return false;
}
}
Run Code Online (Sandbox Code Playgroud)