java找到第一次重复出现的字符,找出第一个只出现一次的字符

  java找到第一次重复出现的字符,找出第一个只出现一次的字符

  问题:

  查找在一个字符串中只出现一次的第一个字符(0=字符串长度=10000,全部由字母组成)并返回其位置,否则返回-1(需要区分大小写)

  相关视频教程推荐:java在线教程

  解决方案:

  题目很明确,就是遍历字符串,统计字符。计数后,找出计数为1的字符。显然,这需要使用hashmap。key是字符串中的每个字符,value是该字符在字符串中出现的次数。

  代码如下:

  导入Java . util . linked hashmap;

  公共类解决方案{

  public int first notrepeating char(String str){

  int len=str . length();

  LinkedHashMapCharacter,Integer map=new linked hashmap();

  for(int I=0;我leni ) {

  char c=str . charat(I);

  integer val=map . get(c);

  map.merge(c,1,(旧值,新值)-旧值新值);

  }

  字符resultKey=null

  for (Character c : map.keySet()){

  if (map.get(c)==1){

  result key=c;

  打破;

  }

  }

  for(int I=0;我leni ){

  if (str.charAt(i)==resultKey){

  返回I;

  }

  }

  return-1;

  }

  }相关文章教程推荐:java快速入门。以上是java实现寻找第一个只出现一次的字符的细节。更多请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: