java查询一个字符串中重复的字符

例:Stringstr="abcdaebijkd";查找出来就应为:a,b,d... 例:String str = "abcdaebijkd";
查找出来就应为:a,b,d
展开
 我来答
阅读服务协议
2009-02-06
知道答主
回答量:9
采纳率:0%
帮助的人:0
展开全部
1:
public static List<Character> test(String str) {
Set<Character> set = new HashSet<Character>();
List<Character> list = new ArrayList<Character>();
for(int i=0;i<str.length();i++){
char c = str.charAt(i);
boolean has = set.contains(c);
if(has){
list.add(c);
}
else{
set.add(c);
}
}
return list;
}
只写了一个方法,供参考。

2:
import java.util.ArrayList;
public class Test {
public static void main(String[] args) {
String s = "abcdaebijkd";
ArrayList list = new ArrayList();
for(int i=0; i<s.length(); i++){
char c = s.charAt(i);
if(s.indexOf(c,i+1)>-1){
Character ch = new Character(c);
if(!list.contains(ch))
list.add(ch);
}
}
for(int i=0; i<list.size(); i++)
System.out.print(list.get(i)+",");
}
}

.

.

.

.

.

.

.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
乐山凝7
2009-02-06 · 贡献了超过110个回答
知道答主
回答量:110
采纳率:0%
帮助的人:0
展开全部
试试这个
import java.util.ArrayList;
public class Test {
public static void main(String[] args) {
String s = "abcdaebijkd";
ArrayList list = new ArrayList();
for(int i=0; i<s.length(); i++){
char c = s.charAt(i);
if(s.indexOf(c,i+1)>-1){
Character ch = new Character(c);
if(!list.contains(ch))
list.add(ch);
}
}
for(int i=0; i<list.size(); i++)
System.out.print(list.get(i)+",");
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
蜀中靓仔
2019-07-11 · TA获得超过609个赞
知道小有建树答主
回答量:517
采纳率:100%
帮助的人:101万
展开全部
public class StringDemo {
public static void main(String[] args) {

String str = "abcmnabcjnabcisabckdabcfdabc";
System.out.println(str.indexOf("abc"));// 0

StringDemo stringDemo = new StringDemo();
int rescult=stringDemo.searchRepeat(str, "abc");
System.out.println(rescult);

}

public int searchRepeat(String string, String wantWords) {
int repeateTime = 0;
int startSearchPlace = 0;
while ((startSearchPlace = string.indexOf(wantWords, startSearchPlace)) != -1) {
repeateTime++;
startSearchPlace += wantWords.length();
}

return repeateTime;
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
岑行柏3204
推荐于2016-03-23 · TA获得超过2435个赞
知道大有可为答主
回答量:1549
采纳率:0%
帮助的人:1356万
展开全部
import java.util.ArrayList;
public class Test {
public static void main(String[] args) {
String s = "abcdaebijkd";
ArrayList list = new ArrayList();
for(int i=0; i<s.length(); i++){
char c = s.charAt(i);
if(s.indexOf(c,i+1)>-1){
Character ch = new Character(c);
if(!list.contains(ch))
list.add(ch);
}
}
for(int i=0; i<list.size(); i++)
System.out.print(list.get(i)+",");
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhoujichao23
2009-02-12 · TA获得超过306个赞
知道小有建树答主
回答量:428
采纳率:0%
帮助的人:307万
展开全部
public static void main(String[] args) throws Exception {

String a = "abcdaebijkd";
String strRes = "";
for(int i=0;i<a.length();i++){
if(a.lastIndexOf(a.toCharArray()[i]) != i){
strRes = strRes + a.toCharArray()[i];
}
}
System.out.println(strRes);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式