在以下三种情况下,StringBuffer转换为String的主要区别是什么:
案例1:使用toString()
StringBuffer sb = new StringBuffer("Welcome");
String st = sb.toString();
Run Code Online (Sandbox Code Playgroud)
案例2:使用+""
StringBuffer sb = new StringBuffer("Welcome");
String st = sb + "";
Run Code Online (Sandbox Code Playgroud)
案例3:使用String.valueOf()
StringBuffer sb = new StringBuffer("Welcome");
String st = String.valueOf(sb);
Run Code Online (Sandbox Code Playgroud)
哪个是性能方面的最佳实践?
将最可能的条件放在if,else-if或else条件中是否有任何区别
例如:
int[] a = {2,4,6,9,10,0,30,0,31,66}
int firstCase = 0, secondCase = 0, thirdCase = 0;
for( int i=0;i<10;i++ ){
int m = a[i] % 5;
if(m < 3) {
firstCase++;
} else if(m == 3) {
secondCase++;
} else {
thirdCase++;
}
}
Run Code Online (Sandbox Code Playgroud)
执行时间与输入的区别是什么
int[] a = {3,6,8,7,0,0,0,0,0,0}
Run Code Online (Sandbox Code Playgroud) 我开发了一个“Java测验应用程序”,它具有许多功能,例如测验进行、即时报告功能、学生可以发布他们的疑问等等。
我想维护请求测验的学生人数、提交回复的学生人数、活跃学生总数和其他一些详细信息的日志。
我正在使用一个全局类,它具有静态变量来保存这些详细信息。这是维护它的正确方法还是我应该使用单例设计模式?
请告诉我两者的优缺点以及使用哪一种以及何时使用?
我尝试过这个实现,但是对于类x来说我是假的
x.clone().equals(x)
Run Code Online (Sandbox Code Playgroud)
X级:
public class X implements Cloneable{
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
protected Object clone()throws CloneNotSupportedException {
return super.clone();
}
}
Run Code Online (Sandbox Code Playgroud)
主要课程:
public class ObjectCloneCopy {
public static void main(String[] args) throws CloneNotSupportedException {
X x = new X();
System.out.println("x.clone().equals(x) - " + x.clone().equals(x));
}
}
Run Code Online (Sandbox Code Playgroud)
是否必须重载hashcode()和equals()以获得此True?
如果不重写这些方法,这个陈述如何给出真实的?
X x1 = x;
x1.equals(x)
Run Code Online (Sandbox Code Playgroud)
解释这可能是真的,我已经在这个链接中看到了
我创建了Servlet,下载POI XLS文件,在第一个get/post请求新文件下载sheet0.当我正在进行第二次请求时,新文件正在下载两张纸.pip0是先前请求sheet1是新请求.如果我做4请求4表可用就像明智一样.
我只想要一张表来满足新的要求.
Servlet代码:
HSSFWorkbook wb = new HSSFWorkbook();
getGet(){
String reportname = request.getParameter("repname");
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment; filename=" + reportname + ".xls");
HSSFSheet sheet = wb.createSheet();
int i=0;
while(i<10)
{
sheet.createRow(i);
HSSFCell cell = sheet.getRow(i).createCell(0);
cell.setCellValue("Test"+i);
i++;
}
ByteArrayOutputStream outByteStream = new ByteArrayOutputStream();
wb.write(outByteStream);
byte [] outArray = outByteStream.toByteArray();
OutputStream outStream = response.getOutputStream();
outStream.write(outArray);
outStream.flush();
outStream.close();
}
Run Code Online (Sandbox Code Playgroud)
网页代码:
<body>
<a href="../../DownloadXLS?repname=Myreport1">One</a>
<a href="../../DownloadXLS?repname=Myreport2">two</a>
<a href="../../DownloadXLS?repname=Myreport3">three</a>
</body>
Run Code Online (Sandbox Code Playgroud)
我也希望在第n次请求时只有一张纸.
shell脚本中使用“”或{}作为变量有什么区别
PATH="\home\user\test dir"
Run Code Online (Sandbox Code Playgroud)
何时使用
"$PATH"
$(PATH)
${PATH}
"${PATH}"
Run Code Online (Sandbox Code Playgroud)
还有其他用例或方法来定义此变量吗?