java实现输出字符串中第一个出现不重复的字符详解

发布时间 - 2026-01-11 00:47:46    点击率:

java实现输出字符串中第一个出现不重复的字符详解

比如:输入name输出n,输入teeter输出r,输入namename输出null

具体实现代码如下:

import java.util.Scanner;

public class Main
{
  public static void main(String[] args)
  {
    Scanner in = new Scanner(System.in);
    String str = in.next();
    for(int i =0 ; i < str.length() ; i++)
    {
      if(str.lastIndexOf(str.char(i)) == i && 
      str.indexOf(str.char(i)) == i)
      {
        System.out.println(str.char(i));
        break;
      }
    }

  }
}

在这个实现代码中我们使用了String类的三个方法成员:

String.length():获取字符串的长度
String.charAt(int index):获取索引index的字符
String.lastIndexOf(char c):获取字符c最后一次出现在字符串中的索引
String.indexOf(char c):获取字符c第一次出现在字符串中的索引

其实我们也可以不使用字符串的这些方法就可以实现了,下面是我个人使用for循环来实现的代码:

import java.util.Scanner;
public class Main
{
  public static void main(String[] args)
  {
    Scanner in = new Scanner(System.in);
    String str = in.next();
    char[] cb = new char[str.length()];
    //将字符串中的字符一次存入cb[]
    for(int i =0 ;i <str.length() ; i++)
    {
      cb[i] = str.charAt(i);
    }
    for(int i = 0 ; i < str.length() ; i++)
    {
      for(int j = 0 ; j < str.length() ; j++)
      {
        if(cb[i] == cb[j] && cb[i] != '0')
        {
          char c = cb[i];
          for(int z = 0 ; z < str.length() ; z++)
          {
            if(cb[z] == c)
              cb[z] = '0';
          }
        }
      }
    }
    for(int i = 0 ; i <str.length() ; i++)
    {
      if(cb[i] != '0')
      {
        System.out.println(cb[i]);
        break;
      }
    }
  }
}

这种方法可以实现,不过这种方法的时间复杂度特别的大,系统开销也特别大,因此我们最好不要使用循环嵌套,除非迫不得已,不然对系统开销是很大的。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# java  # 字符串输出  # 字符串输出不重复  # java 判断字符串中是否有重复字符的示例  # Java实现去掉字符串重复字母的方法示例  # Java使用正则表达式截取重复出现的XML字符串功能示例  # Java中ArrayList去除重复元素(包括字符串和自定义对象)  # java正则表达式实现提取需要的字符并放入数组【ArrayList数组去重复功能】  # java统计字符串中重复字符出现次数的方法  # 用Java正则去掉字符串中重复出现的字符  # Java 将一个字符重复n遍过程详解  # 出现在  # 这种方法  # 在这个  # 第一个  # 希望能  # 迫不得已  # 可以实现  # 谢谢大家  # 来实现  # 就可以  # 实现了  # 使用了  # util  # Scanner  # import  # brush  # static  # void  # public  # Main 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 用v-html解决Vue.js渲染中html标签不被解析的问题  如何快速搭建高效简练网站?  JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)  Laravel怎么实现模型属性的自动加密  潮流网站制作头像软件下载,适合母子的网名有哪些?  Laravel怎么配置S3云存储驱动_Laravel集成阿里云OSS或AWS S3存储桶【教程】  Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】  Laravel的辅助函数有哪些_Laravel常用Helpers函数提高开发效率  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  Python文本处理实践_日志清洗解析【指导】  MySQL查询结果复制到新表的方法(更新、插入)  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  如何在Ubuntu系统下快速搭建WordPress个人网站?  个人摄影网站制作流程,摄影爱好者都去什么网站?  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  Laravel如何自定义分页视图?(Pagination示例)  Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道  如何在万网自助建站平台快速创建网站?  ,怎么在广州志愿者网站注册?  在线制作视频的网站有哪些,电脑如何制作视频短片?  Laravel API资源类怎么用_Laravel API Resource数据转换  如何用IIS7快速搭建并优化网站站点?  Android okhttputils现在进度显示实例代码  微信小程序 wx.uploadFile无法上传解决办法  如何在阿里云服务器自主搭建网站?  高性能网站服务器配置指南:安全稳定与高效建站核心方案  Laravel中间件如何使用_Laravel自定义中间件实现权限控制  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  如何在万网ECS上快速搭建专属网站?  简单实现Android文件上传  轻松掌握MySQL函数中的last_insert_id()  如何在香港免费服务器上快速搭建网站?  米侠浏览器网页图片不显示怎么办 米侠图片加载修复  如何快速查询网站的真实建站时间?  夸克浏览器网页跳转延迟怎么办 夸克浏览器跳转优化  Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明  长沙企业网站制作哪家好,长沙水业集团官方网站?  Laravel如何创建自定义Facades?(详细步骤)  如何快速搭建自助建站会员专属系统?  韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐  微信小程序 五星评分(包括半颗星评分)实例代码  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  Mybatis 中的insertOrUpdate操作  如何自定义建站之星网站的导航菜单样式?  ,南京靠谱的征婚网站?  Laravel API资源(Resource)怎么用_格式化Laravel API响应的最佳实践  高性价比服务器租赁——企业级配置与24小时运维服务  Laravel怎么多语言本地化设置_Laravel语言包翻译与Locale动态切换【手册】  Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康  使用豆包 AI 辅助进行简单网页 HTML 结构设计