2017-11-14 20 views
0

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は、私はそれを修正する方法がわからない

+1

あなたは、これは私は推測している – JJJ

+0

、Javaの –

+0

はいたJava SRYがいることを言及しなかったとするプログラミング言語言及した場合、それが役立つだろう – ezscript

答えて

1

あなたは正しいループのために長く使用されていますが、その後、lines[i]に問題の開始をインデックスを使用しているとき。 Javaはインデックスが常にintですが、あなたの場合には、それが長いと言います。

と長いが、あなたが(好みではない)lines[(int)i]などの指標として使用しているときにデータがループのために入力するか、i変数をキャストintにint.either変更longデータ型に直接キャストすることはできません。

関連する問題