JAVA字符串中取特定字符的位置

不考虑串中多次出现该字符的问题。就假定该串中只出现了一次我们要查找位置的字符,我要得到的是该字符在串中的位置,String、StringBuffer两个类分别都有什么方法? 我只是记不清了,请大家帮忙一下
三楼的恶心,我是来问问题的又不是需求意见的,你怎么就断定我想做程序员?真晕,以后不要什么都不清楚就在那乱吠

String,一但声明了就不能变了!而StringBuffer是可变的,String声明的空间是个池里,而StringBuffer只能在堆里声明。
int indexOf(int ch)
返回指定字符在此字符串中第一次出现处的索引。
int indexOf(int ch, int fromIndex)
返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索。
int indexOf(String str)
返回指定子字符串在此字符串中第一次出现处的索引。
int indexOf(String str, int fromIndex)
返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-10-06
int indexOf(int ch)
返回指定字符在此字符串中第一次出现处的索引。
int indexOf(int ch, int fromIndex)
返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索。
int indexOf(String str)
返回指定子字符串在此字符串中第一次出现处的索引。
int indexOf(String str, int fromIndex)
返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始。
第2个回答  2008-10-06
String str = "123";
int i = str.IndexOf('1'); // 返回第一个匹配字符的位置

StringBuffer一样的。本回答被提问者采纳
第3个回答  2008-10-06
给你一个测试类:

public class TestString {

/**
* @param args
* @author 韩卫召
*/
public static void main(String[] args) {
//string测试
String str = "hanweizhai";
if(str.indexOf("h")!=-1){
//如果包含h
System.out.println("String Test>>>>>>>>>>>>>>"+(str.indexOf("h")+1));
}
//stringBuffer测试
StringBuffer sb=new StringBuffer();
sb.append("hanweizhao");
if(sb.indexOf("a")!=-1){
//如果包含a
System.out.println("StringBuffer Test>>>>>>>>>>"+(str.indexOf("a")+1));
}
}

}
第4个回答  2008-10-06
String s="abcdefghi";
String s1="fgh";
int index= s.indexOf(s1);
相似回答