据我所知,当你有大量的String时,使用+符号的concatinate String不是一个好习惯.但是当我检查eclipse生成的toString()方法时(写点击源文件 - > Source - > Generate toString())它就一样了.
public class Temp
{
private String tempName;
private String tempValue;
// here getters and setters
/* (non-Javadoc)
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
return "Temp [tempName=" + tempName + ", tempValue=" + tempValue + "]";
}
}
Run Code Online (Sandbox Code Playgroud)
是否有任何地方可以配置像我期望的toString()方法,如eclipse中的bellow或为什么eclipse不考虑这一点.
public String expectedToString(){
StringBuffer sb = new StringBuffer();
sb.append("Temp [tempName=").append(tempName).append(",").append(" tempValue=").append(tempValue).append("]");
return sb.toString();
}
Run Code Online (Sandbox Code Playgroud)
我将使用自动生成的toString()方法来记录我的对象值.
请建议我.
例如,我有以下正则表达式:( \d{2}2位数).当我使用时
Matcher matcher = Pattern.compile("\\d{2}").matcher("123");
matcher.find();
String result = matcher.group();
Run Code Online (Sandbox Code Playgroud)
在结果变量中,我只获得第一个条目,即12.但我希望得到所有可能的条目,即12和23.
怎么做到这一点?
应该使用last语句return和非void返回类型方法吗?但这仍然有效.
public String test()
{
try
{
// Do my work
return "myValue";
}
finally
{
System.out.println("I'm in Finally");
}
}
Run Code Online (Sandbox Code Playgroud)
我有点缺乏了解这项工作的知识.有人能解释我吗?
@SuppressWarnings注释是为了更清晰的代码,还是通过添加它是否有任何性能提升或任何优势?
或者我们可以通过这样做来减少编译时间.
我正在创建具有少量元素的String数组.那时我注意到我在第一个元素之后放了逗号,它仍然是编译的.我以为它不会编译.然后我打印尺寸,它说1
String args [] = {request.getParentMessageID() , };
System.out.println(args.length);
Run Code Online (Sandbox Code Playgroud)
所以
String args [] = {request.getParentMessageID() , }; and String args [] = {request.getParentMessageID()};
Run Code Online (Sandbox Code Playgroud)
两者都表现得一样.
有人可以解释为什么这些没有什么不同以及为什么要编译.
我的文件名是Temp.java,在里面我有这个.我正在使用eclipse IDE
/*package*/ class Test {
public static void main(String args[]) {
System.out.println("test");
}
}
Run Code Online (Sandbox Code Playgroud)
所以我无法将其作为java应用程序运行.我把我的班级名改为Temp
class Temp {
....
}
Run Code Online (Sandbox Code Playgroud)
现在我能.有人能解释一下为什么吗?
将给定的String start与另一个String进行比较的最佳方法是什么?
示例:
if("ABCD1234".startsWith("ABCD")){
System.out.println("This is true ");
}
if("ABCD1234".substring(0,4).equalsIgnoreCase("ABCD")){
System.out.println("This also true ");
}
Run Code Online (Sandbox Code Playgroud)
或者还有其他解决方案吗?
我正在经历一个已经开发的GWT项目,我发现了一些波纹模式的方法.有人可以在大括号之前和之后对/* - 的含义进行expalin.
private static native int getAvailableScreenHeight() /*-{
// Method body here
}-*/;
Run Code Online (Sandbox Code Playgroud)
这就是它在Eclipse中的显示方式(似乎eclipse已将其识别为有效的方法.当我按下*和 - 之间的空格时,它显示为注释代码)

这是不好的做法还是任何性能损失,这是检查x不等于null
if( !(x == null) ){
System.out.println("x is not a null value");
}
Run Code Online (Sandbox Code Playgroud) 它应该是一个单词猜测游戏,在猜测它还没有完成之前有5次机会输入辅音,但我必须知道程序的这部分是否运行良好.我认为给我带来麻烦的变量是辅音,元音,数字这是我的代码:ps im very new to java
public class julia1 {
public static void main(String[] args) {
System.out.print("enter text to guess: ");
String w = Keyboard.readString();
String asterix = "";
for(int c = 0; c < w.length(); c++){
if(w.charAt(c)==(' ')) asterix = asterix + " ";
else asterix = asterix + "*";
}
System.out.println(asterix);
for (int trys = 0; trys <=5; trys++){
String temp="";
System.out.print("enter a consonant: ");
char c1 = Keyboard.readChar();
for (int i = 0; i < w.length(); i++) …Run Code Online (Sandbox Code Playgroud)