2-6的这个练习题,为什么在eclipse里面创建一个新的StringBuilder对象时,调用下面的方法时提示出错啊?不说说StringBuilder和StringBuffer是相似的么?
package com.nwsuaf.edu;
public class StringBuilder {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//创建一个空的StringBuider对象
StringBuilder str = new StringBuilder();
//追加字符串
str.append("shianegiadnhfoa");
//从后往前每隔3位插入逗号
for(int i = str.length() - 3;i>0;i=i-3){
str.insert(i,',');
}
//将StringBuilder对象转换为String对象并输出。
System.out.println(str.toString());
}
}
引言:
eclipse新导入的项目经常可以看到“XX cannot be resolved to a type”的报错信息。本文将做以简单总结。
正文:
(1)jdk不匹配(或不存在)
项目指定的jdk为“jdk1.6.0_18”,而当前eclipse使用的是“jdk1.6.0_22”。需要在BuildPath | Libraries,中做简单调整。
(2)jar包缺失或冲突
当找不到“XX”所在的jar包时,会报这个错。解决只需要找到(ctrl+点击,可能能看到jar包名称)对应jar包导入项目即可。
另外,出现相同的XX时也会报此错。可能需要调包、解包、选删。
(3)eclipse查找项目类型策略所致
eclipse下,上述两条都对比过了,没有任何问题,可偏偏还报这错。这时,需要操作一下 Project | Clean... ,问题即可解决。原因是,机制所致。因为某些特殊原因,eclipse没能自动编译源代码到build/classes(或其他classes目录),导致类型查找不到。
转载:http://zhaoningbo.iteye.com/blog/1137215
package com.nwsuaf.edu; //导入StringBuilder类 import java.lang.StringBuilder; public class StringBuilder { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub //创建一个空的StringBuider对象 StringBuilder str = new StringBuilder(); //追加字符串 str.append("shianegiadnhfoa"); //从后往前每隔3位插入逗号 for(int i = str.length() - 3;i>0;i=i-3){ str.insert(i,','); } //将StringBuilder对象转换为String对象并输出。 System.out.println(str.toString()); } }
package com.nwsuaf.edu;
//导入StringBuilder类
import java.lang.StringBuilder;
public class StringBuilder {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//创建一个空的StringBuider对象
StringBuilder str = new StringBuilder();
//追加字符串
str.append("shianegiadnhfoa");
//从后往前每隔3位插入逗号
for(int i = str.length() - 3;i>0;i=i-3){
str.insert(i,',');
}
//将StringBuilder对象转换为String对象并输出。
System.out.println(str.toString());
}
}
就像这样的错误提示,我的JDK是1.7.0版本的,是因为版本太低么?
因为i= length的时候。这个位置不存在,在低版本的JDK出出现错误。eg 数组 int[] a={1,2,3,5,6,7}
System.out.println(a[a.length]) 取值道理一样。
我这没报错啊?你报的什么错,有错误信息提示吗?