看板 java 關於我們 聯絡資訊
請教一下 我正再將一個C程式改寫成Java C程式中有行動態宣告Array的程式碼 double* et= (double*)malloc(sizeof(double)*ARRAYSIZE); 想請教一下Java是否也有這樣的功能呢? --------程式碼說明--------- 原本在C程式中~我們會輸入一個1.txt的檔案 內容都是數字(float)~輸入後 資料要擺進去一個名為et 的array 但因為所讀取的檔案內容資料量不明~所以採用動態宣告陣列的方式~ 程式碼的ARRAYSIZE也只是給予頗大的值以應付未知的檔案資料量~ 目前改寫成Java時我採用了土法煉鋼的方式~先掃描一次1.txt計算資料量 再將資料量assign給ARRAYSIZE隨即產生et 接著再讀一次檔案擺入資料~~ try//先讀一次計算檔案資料量   {    Scanner count = new Scanner(new File("1.txt")); while(count.hasNextDouble()) { double cc = count.nextDouble(); ARRAYSIZE++; } } catch(FileNotFoundException eee)   { eee.printStackTrace(); } double[] et = new double[ARRAYSIZE]; //產生et array try//再讀一次並將檔案放入et { Scanner input = new Scanner(new File("1.txt")); while(input.hasNextDouble()) { double d = input.nextDouble(); et[nData]=d; nData++; } } catch(FileNotFoundException e1) { e1.printStackTrace(); } ------------------------------------------------------------------- 希望能知道怎麼改寫~感謝大家的幫忙~ 第一次碰Java請鞭小力點 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 169.229.53.37 ※ 編輯: leifjason 來自: 169.229.53.37 (04/20 12:35)
hate9527:LIST 04/20 12:38
superlubu:java.util.ArrayList 04/20 12:47
※ 編輯: leifjason 來自: 169.229.53.37 (04/20 12:52)
Puser:也可能用到string.split()與 float.valueof() 04/20 13:16
Puser:動態陣列自已做會用到arrays.copyof() 04/20 13:43