【问题标题】:How can I do for loop with long value我该如何做具有长值的循环
【发布时间】:2018-04-27 08:49:39
【问题描述】:

我需要像这样使用 for 循环和 long 值编写代码:

for(long i=1;i<lines.length; i++){

    char tmp = lines[i].charAt(lines[i].length()-1);

    int index = lines[i].lastIndexOf(" ");

    lines[i] = lines[i].substring(0, index);

    if(tmp != lastChar)
        lines[i] = "S" + lines[i];
    else
        lines[i]=" "+lines[i];

    lastChar = tmp;        
}

问题是:incompatible types:possible lossy conversion from long to int我不知道怎么解决

【问题讨论】:

  • 如果您提到这是哪种编程语言会有所帮助
  • 我猜,Java
  • 是的,Java sry 没有提到这一点

标签: java for-loop if-statement int long-integer


【解决方案1】:

您在 for 循环中使用 long 是正确的,但是当您在 lines[i] 中使用索引时,问题就开始了。 java 说 index 总是 int 但在你的情况下它很长。

并且 long 不能直接转换为 int。要么在 for 循环中将 long 数据类型更改为 int 数据类型,要么在使用 lines[(int)i] 之类的索引时转换 i 变量(不喜欢)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-06
    • 2018-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多