黑马程序员技术交流社区
标题:
总是出现Incompatible operand types char and String的错
[打印本页]
作者:
pifuhanshu
时间:
2014-3-16 22:43
标题:
总是出现Incompatible operand types char and String的错
本帖最后由 pifuhanshu 于 2014-3-21 18:30 编辑
/**自定义一个方法返回一个数组中前后空格
* @author admin
*思路:
* 1.定义2个变量start、end分别表示开始和结束位置的字符位数
* 2.然后分别对开始结束位置是否是空格进行判断
* 如果开始的位置是空格,start++
* 如果结束的位置是空格,end--
* 直至找到不是空格的位置,然后调用subString()返回所要截取的
* 字符串。
*/
public class StringTest4 {
/**
* @param args
*/
public static void main(String[] args) {
String str=" ad fdsaa ";
String sub=myStrim(str);
System.out.println("sub="+"-"+sub+"-");
}
/**
* 自定义一个myStrim()方法返回去除空格的字符串
* @param str1
* @return
*/
public static String myStrim(String str1) {
//定义变量分别表示String类字符串的开始处和结尾处
int start=0, end=str1.length()-1;
//如果开始处为空格,开始处的指针自加一
while (start<=end&& str1.charAt(start) == " "){
start++;
}
//如果结尾处为空格,结尾处的指针自减一
while (start<=end&& str1.charAt(end) ==" "){
end--;
}
//通过调用substring()返回开始和结尾处的字符串
String sub=str1.substring(start, end+1);
return sub;
}
}
复制代码
作者:
水蓝
时间:
2014-3-16 22:50
String方法charAt()返回的是字符,而不是字符串,应该用单引号,而不是双引号。
/**
* 自定义一个myStrim()方法返回去除空格的字符串
* @param str1
* @return
*/
public static String myStrim(String str1) {
//定义变量分别表示String类字符串的开始处和结尾处
int start=0, end=str1.length()-1;
//如果开始处为空格,开始处的指针自加一
while (start<=end&& str1.charAt(start) == ' '){ //<----这边应该是单引号
start++;
}
//如果结尾处为空格,结尾处的指针自减一
while (start<=end&& str1.charAt(end) ==' '){ //<-----这边也应该是单引号
end--;
}
//通过调用substring()返回开始和结尾处的字符串
String sub=str1.substring(start, end+1);
return sub;
}
复制代码
作者:
刘凯旋
时间:
2014-3-17 13:41
while (start<=end&& str1.charAt(start) == " ") charAt()方法得到的是字符不是字符串,字符与字符串所用的引号是不同的
作者:
蒙奇.D.路飞
时间:
2014-5-16 21:02
额 我也犯了这个错误 看来要注意细节啊
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2