伊莉討論區

標題: 問一下錯誤訊息 [打印本頁]

作者: 復仇刺    時間: 2020-10-13 11:58 AM     標題: 問一下錯誤訊息

/**
* @(#)Division.java
*
*
* @author
* @version 1.00 2020/10/13
*/
import java.io.*;
import java.util.*;
import java.util.StringTokenizer;
public class Division {

    public static void main (String args[])
       {
           String str =new String("abc,def,ghi,gkl");
           String [] newstr=str.split(",");
           for(int i=0;i<newstr.length;i++)
           {
               System.out.print(newstr[i]);
           }
           String newstr2=str.split(",",2);
           for(int j=0;j<newstr2.length;j++)
           {
               System.out.print(newstr2[j]);
           }
           
    }
   
   
}

/*
--------------------Configuration: <Default>--------------------
C:\Users\userchen\Desktop\Division.java error: incompatible types: String[] cannot be converted to String
        String newstr2=str.split(",",2);
                                ^
C:\Users\userchen\Desktop\Division.java:22: error: cannot find symbol
        for(int j=0;j<newstr2.length;j++)
                             ^
  symbol:   variable length
  location: variable newstr2 of type String
C:\Users\userchen\Desktop\Division.java error: array required, but String found
            System.out.print(newstr2[j]);
                                    ^
3 errors

Process completed.

我照書上寫
我知道要import 是少了什麼嗎

我的JAVA程式是最早期的不知是不是有差!

*/








作者: tryit244178    時間: 2020-10-13 04:29 PM

  1. String newstr2=str.split(",",2);
複製代碼
上面這個沒宣告成陣列
之後的錯誤都是因為這個原因產生的
作者: tryit244178    時間: 2020-10-14 03:00 PM

Split應該是分割字串用的吧。
至於後面的參數是什麼,我就不知了,要去查。
但我懶
書裡面沒教嗎?
作者: 復仇刺    時間: 2020-10-15 09:57 AM

tryit244178 發表於 2020-10-14 03:00 PM
Split應該是分割字串用的吧。
至於後面的參數是什麼,我就不知了,要去查。
但我懶

[attach]133426536[/attach]
[attach]133426538[/attach]

我跟你一樣只知道split是切割字串= =
後面參數書上有教可是不太懂= ="
為什第一次拆完abc斷了一行



作者: neorang    時間: 2020-11-16 09:36 PM

這樣寫好一點,  [] 和 String 之間沒有空位
String str = "abc,def,ghi,gkl";
String[] tokens = str.split(":");
for (String token:tokens) {
System.out.println(token);
}
作者: 31949913    時間: 2022-2-3 04:00 AM

split回傳為String陣列

String [] newstr2=str.split(",",2);
split(",",2); 意思為回傳的字串陣列最大數量
如上述範例為2,第二個字串為剩下的子字串




歡迎光臨 伊莉討論區 (https://attach1201.eyny.com/) Powered by Discuz!