Java - “字符串索引超出范围”异常

2023-12-07

我编写这个小函数只是为了练习,但是抛出了一个异常(“字符串索引超出范围:29”),我不知道为什么......

(我知道这不是编写此函数的最佳方法,我可以使用正则表达式吗?)

这是代码:

public String retString(String x) 
{
    int j=0;
    int i=0;
    StringBuffer y = new StringBuffer(x);

try
{


    while ( y.charAt(i) != '\0' )
    {
        if (y.charAt(i) != ' ')
        {
            y.setCharAt(j, y.charAt(i));
            i++;
            j++;
        }
        else
        {
            y.setCharAt(j, y.charAt(i));
            i++;
            j++;
            while (y.charAt(i) == ' ')
                i++;
        }           
    }
    y.setCharAt(j,'\0');



}
finally 
{

    System.out.println("lalalalololo " );
}

    return y.toString();


}

您正在从另一种语言翻译此代码吗?您将循环遍历字符串,直到到达空字符("\0"),但 Java 通常不在字符串中使用这些。在 C 中,这可行,但在你的情况下你应该尝试

i < y.length()

代替

y.charAt(i) != '\0'

此外,

 y.setCharAt(j,'\0')

如果这是您所期望的,则代码末尾不会调整字符串的大小。你应该尝试

y.setLength(j)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java - “字符串索引超出范围”异常 的相关文章

  • java.lang.NoSuchMethodError: org.mockito.Mockito.framework()Lorg/mockito/MockitoFramework

    我一直面临一个特殊的问题 基本上 当我正常运行 Mockito 测试 即 作为 Junit 测试运行 时 它会出现以下错误 有人可以帮我看看我的错误是什么吗 收到的错误 java lang NoSuchMethodError org moc
  • 我们可以实例化一个抽象类吗?

    在一次采访中 有人问我 我们是否可以实例化一个抽象类 我的回答是 不 我们不能 但是 面试官告诉我 错了 我们可以 我对此争论了一下 然后他告诉我自己在家尝试一下 abstract class my public void mymethod
  • 如何在 Spring 中从 application.properties 重新加载 @Value 属性? [复制]

    这个问题在这里已经有答案了 我有一个spring boot应用 在run文件夹下 有一个额外的配置文件 dir config application properties 当应用程序启动时 它使用文件中的值并将它们注入到 Value my
  • Java如何从字符串实例化一个类[重复]

    这个问题在这里已经有答案了 可能的重复 在 Java 中从变量创建新类 https stackoverflow com questions 1268817 create new class from a variable in java 我
  • GAE 上奇怪的 500 错误

    我今天开始在我的应用程序上收到此错误 根本不记得更改任何内容 每当我在本地尝试时它都工作正常 但部署后我会收到此错误 EXCEPTION java lang ClassNotFoundException se myApp server My
  • 此代码签名证书对于签名小程序有效吗?

    我们购买了代码签名证书来签名小程序 但在签名小程序时出现以下错误 C CM WEB INF gt jarsigner keystore code signing keystore C CM SweetApplet jar code sign
  • 使用 GIN 注入 Class

    有没有办法注入类类型Class
  • Java 8 流排序字符串列表[重复]

    这个问题在这里已经有答案了 我正在流上调用排序方法 java 文档说 Sorted 方法返回一个由该流的元素组成的流 并根据自然顺序排序 但是当我运行下面的代码时 List
  • Spring WebFlux:在 Spring Data MongoDB 反应存储库中的 null 值时发出异常?

    我正在尝试学习如何使用 MongoDB 反应存储库spring boot 2 0 0 M2 但我担心我没有按预期做事 这是我的方法之一 试图找到一个User通过他们的电子邮件 但如果没有 该方法应该抛出异常 Override public
  • swing - 在 JPanel 上单击组件

    好的 我有一个带有 GridLayout 的 JPanel 网格的每个单元格都包含另一个 JPanel 我希望能够做的是在 下方 JPanel 上有一个侦听器 然后它告诉我单击了哪个 覆盖 JPanel 这样我就可以对它和周围的 JPane
  • Lcom/google/firebase/FirebaseApp 类中没有虚拟方法 zzbqo()Z;或其超类(“com.google.firebase.FirebaseApp”的声明

    在我的 Android 应用程序中 编译应用程序时出现错误 我正在最新的 android studio 中工作 并使用 Firebase UI Auth 和 Firebase 数据库 所有版本在应用程序级等级文件中都相同 那么为什么我收到此
  • 从流中过滤/删除无效的 xml 字符

    首先 我无法更改 xml 的输出 它是由第三方生成的 他们在 xml 中插入无效字符 我得到了 xml 字节流表示形式的 InputStream 除了将流消耗到字符串中并对其进行处理之外 是否有一种更干净的方法来过滤掉有问题的字符 我找到了
  • Java 有现成的时钟同步解决方案吗?

    我们有一个大型的高性能软件系统 它由多个交互的 Java 进程 不是 EJB 组成 每个进程可以在同一台机器上 也可以在不同的机器上 某些事件在一个进程中生成 然后以不同的方式传播到其他进程以进行进一步处理等 出于基准测试的目的 我们需要创
  • 将文件内容存储到数组中

    我的刽子手程序有问题 我真的认为我需要做的事情超出了我对java的理解 这是我的代码 import java io BufferedReader import java io FileReader import java io FileNo
  • JavaFX:在 WebView img 标签中未加载本地图像

    以下是我的代码 一切安好 我可以加载远程页面 我可以放置 HTML 内容 但我的img标签显示一个X标志表示无法加载图像 Note 我的图像与类位于同一个包中JavaFX在 Smiley 文件夹中 我可以列出所有图像 这意味着路径没有问题
  • 更新 Maven 项目模块中的父版本

    我有一个奇怪的场景 我有一个项目 Y 它有一个模块 X 和一些其他模块 X 是项目 Y 的一部分 但它不作为该项目的模块链接 因此 每次发布 Y 的新版本时 都需要有人手动更新 X 中的父版本 我需要以这样的方式更新 Y 项目 a 每次发布
  • 如何使用 Java 到 TestRail 的 API 将测试用例添加到现有测试运行中?

    我在执行期间创建了一个测试运行 我想在它们开始执行的同时添加测试用例 如果测试用例尚不存在 则已创建 并且该测试用例应该与其他测试用例一起添加到现有的测试运行中 我尝试过使用setCaseIds在运行期间和更新运行之后 但这会覆盖现有的运行
  • JFrame 类型的方法 ... 未定义

    我正在尝试制作一个带有两个菜单列表的 gui 每个菜单列表有 3 个项目 我的问题是 当我单击某个项目时 出现错误 JFrame 类型的方法 displayList int AirplaneList 未定义 AirplaneControll
  • javaFX,抛出 NullPointerException,位置是必需的

    我看过其他答案 但没有任何帮助我 抱歉 GUI新手只知道swing的基础知识 这是主课 package application import javafx application Application import javafx fxml
  • Jsplitpane 自动调整大小

    我有一个 JSPlitPane 它们之间有 50 的分隔线 这工作正常 但是 当我在右侧添加一些 JLabels 时 jsplitpane 会忽略我的 50 分隔符 左侧窗格会增加其大小 并会挤压右侧窗格 为什么会发生这种情况以及如何解决

随机推荐

  • UI 测试失败并出现错误“无法在 15.0 秒内获取快照”

    我有一个包含大量单元格的表格视图 我尝试从此表格视图中点击特定单元格 但测试以这个错误结束 15 0s内抓拍失败 我假设系统将在访问其元素之前拍摄整个表视图的快照 由于cell数量巨大 快照时间不够 15秒可能是系统默认时间 我手动设置睡眠
  • iPhone SDK - 在 Web 视图中打开 UITextView 中的链接

    我在 UITextView 上指定了 dataDetectorTypes 以便在触摸时在 Safari 中打开 URL 是否可以拦截此行为 以便我将 URL 加载到 UIWebView 中 或者我会编写自己的 URL 检测器代码来重新路由它
  • 故障排除:不包含适合入口点的静态“main”方法

    我正在尝试创建一个多类程序 该程序创建学生对象 然后允许您更改其中一个学生对象的未声明专业的值 这是我的代码 StudentApp cs using System using System Collections Generic using
  • XSLT:用 \' 替换单引号

    我正在使用 XSLT 将 XML 转换为 html php 文件 在此 XSLT 中 我用 php 代码替换了一些标签 现在我必须将属性值传递到该 php 代码中 我现在的问题是我必须用反斜杠转义单引号才能使其工作 这可以通过 XSLT 实
  • Shapeless:使用 Coproduct 拥有自己的 HList 约束

    注 从Shapeless 尝试通过类型限制 HList 元素 问题 2 使用余积的自身约束 我真正想做的是使用余积编写一个新的约束 trait CPConstraint L lt HList CP lt Coproduct extends
  • Visual Studio javascript 调试不起作用

    这个博客 从 Visual Studio 在 Microsoft Edge 中调试 JavaScripthttps devblogs microsoft com visualstudio debug javascript in micros
  • CSS:css末尾的问号有什么作用?

    维基百科 css 的示例 content a href https link https background url images external link ltr icon png 2 no repeat scroll right c
  • 如何删除 div 上的边框部分以使左侧导航看起来与主要内容部分无缝衔接?

    我试图删除活动菜单项与右侧内容 div 相遇的左边框 See http d pr i hfRZ 所以看起来活动元素与主要内容 div 的级别相同 如下所示http dribbble com shots 663779 Left navigat
  • swift CGPDF文档解析

    我正在尝试使用 Swift 来解析 PDF 文档的内容 遵循 Apple 的编程指南 其中所有示例都是 ObjC let filepath Users ben Desktop Test pdf let localUrl filepath a
  • 在 Windows 上从命令行下载最新的 Java SE 运行时环境 8

    在 Windows 服务器上 我正在寻找一种可靠的方法来从命令行下载最新的 Java SE 运行时 我的要求是检查系统上是否安装了java 如果没有找到java 我们的MSI安装程序 使用WIX创建 需要连接oracle java下载页面并
  • 较小时 UIScrollView 的中心内容

    我有一个UIImageView里面一个UIScrollView我用它来缩放和滚动 如果滚动视图的图像 内容比滚动视图大 则一切正常 但是 当图像变得小于滚动视图时 它会粘在滚动视图的左上角 我想让它保持居中 就像照片应用程序一样 有关保留内
  • 解码十六进制:这一行的作用是什么 (len & 0x01) != 0

    我正在查看 Apache commons 库中的一段代码 并且想知道这些条件到底有何作用 public static byte decodeHex final char data throws DecoderException final
  • 在特定网络接口 Linux/Unix 上使用 C++ TCP 客户端套接字

    我有以下代码 默认情况下连接到接口 eth0 1G NIC 但我想使用 eth5 10G NIC 进行连接 class TCPClientSocket protected int socket file descriptor public
  • 刷新 angularjs 中的标题页面

    在 angularjs 中登录后我必须刷新 header html 当调用登录时 整个页面将被刷新并初始化标题 但登录后仅加载内容而不是标题 我可以做什么来刷新标题 索引 html div class container holder di
  • 查找所有表列的最小值和最大值

    该查询按预期工作 但速度非常慢 这里有人有提高性能的建议吗 我本质上只是创建一个临时表来存储所有表和列名称 并通过 WHILE 语句循环它们 以使用我想要的详细信息创建到另一个表的动态插入 我最近的一次运行花费了大约 21 分钟 这并不完全
  • 计算Java中HashMap的开销

    假设我在哈希图中存储 1000 个对象 这个哈希图经过扩展 允许我将三维坐标映射到存储在其中的对象 里面的物体有固定的大小 哈希键是一个长整数 我将如何 以数学方式 计算出该结构的可能开销 它是否足够重要 例如 如果内部数据约为 256mb
  • 从 vba 到平面文件的 Unicode 字符串

    我想将 excel vba 宏中的 unicode 字符串存储在 Windows 盒子上的平面文件中 该宏将普通字符串转换为 unicode 表示形式 需要将其存储在文件中并稍后检索 如前所述 您可以使用 Microsoft 脚本运行时 s
  • 根据屏幕尺寸更改列数

    我正在尝试 Bootstrap 我想知道如何根据屏幕尺寸调整列数 我从 Bootstrap CSS 教程中看到了这个 div class row div class col xs 12 col md 8 col xs 12 col md 8
  • ASP.NET Web 项目中的 Razor 视图

    我目前正在研究视图引擎 Razor Views 对我来说变得非常有趣 我正在开发一个 ASP NET 4 0 Web 表单应用程序 我能找到的 Razor 视图示例主要是 MVC 应用程序 是否可以将 Razor 视图集成到 Web 表单应
  • Java - “字符串索引超出范围”异常

    我编写这个小函数只是为了练习 但是抛出了一个异常 字符串索引超出范围 29 我不知道为什么 我知道这不是编写此函数的最佳方法 我可以使用正则表达式吗 这是代码 public String retString String x int j 0