2010-11-22 6 views
1
public class fraktal extends JFrame { 

public fraktal (String args[]) { 
    calc = new Calculator(632,453,raster, this);  
    } 
calc.start(); 


} 
public static void main(String args[]) { 
    new fraktal(args); 
} 

} 

class Calculator extends Thread { 
public Calculator(int sx, int sy, WritableRaster r, JFrame p) { 

public void run() { 
    int[] dataArray = new int[3600000]; 
    raster.getPixels(0,0,32,53,dataArray); 
    //System.out.println(Arrays.toString(dataArray));  
} 
} 

メインのint配列 "dataArray"を使いたいのですがどうすれば入手できますか?本当にありがとうございます! スレッドのrun()関数からメイン関数の1つのint配列を使用したい

+0

コードの書式設定を使用してください。 –

+0

あなたはすでにその配列を使用していますが、あなたのコードの問題は何ですか? –

+0

私はメインファンクションでdataArrayを使用したい –

答えて

1

ここでコードには多くの間違いがあります。メインメソッドのdataArrayをスニペットとして使用したい場合は、間違いがあります。ミスを修正しようとし、また、あなたが簡単に計算してfraktalするゲッターを追加することができます

import java.awt.*; 
import java.util.*; 
import javax.swing.*; 
import java.awt.image.WritableRaster; 


public class fraktal extends JFrame { 
int[] dataArray; 
public fraktal (String args[]) { 
    Calculator calc = new Calculator(dataArray);  
    calc.start(); 
    } 




public static void main(String args[]) { 
fraktal ob = new fraktal(args); 
System.out.println(ob.dataArray); 
} 

} 

class Calculator extends Thread { 
int[] dataArray; 

public Calculator(int[] dataArray) { 
    this.dataArray = dataArray; 
} 
public void run() {  
    System.out.println(Arrays.toString(dataArray));  
} 
} 

Java Variable Scope Documentation

+0

だからニック!できます!ありがとうございます! –

+0

@Andy、コード –

+0

を理解しようとすると、なぜthis.dataArray = dataArrayの後に、run()関数のdataArrayを変更するとmainで宣言されたdataArrayに反映できるのでしょうか?ありがとう! –

0

与えられたリンクを確認してください。 getMyArray()のようなSmt。

+0

私は自分の質問を編集しました。どんな助け?ありがとう! –

関連する問題