Java 在窗口上打印数字数组

Java 在窗口上打印数字数组,java,graphics,Java,Graphics,您好,我是java图形新手,只是在尝试一些东西,但我对如何在我创建的窗口上显示数组中的数字感到困惑?我不确定它是否与文本相同 import java.util.Scanner; import javax.swing.JFrame; import javax.swing.*; import java.awt.*; import java.awt.event.*; public class area extends JFrame{ int[] myArray; myArray

您好,我是java图形新手,只是在尝试一些东西,但我对如何在我创建的窗口上显示数组中的数字感到困惑?我不确定它是否与文本相同

import java.util.Scanner;
import javax.swing.JFrame;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;


public class area extends JFrame{


    int[] myArray;
    myArray = new int[3];
    myArray[0] = 1;
    myArray[1] = 2;
    myArray[2] = 3;

JTextArea area = new JTextArea();
for (int i=0; i<myArray.length; i++)
{
    area.append(myArray[i]+"\n");
}
add(area);  


public static void main(String args[]) {

area gui = new area(); 
gui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
gui.setSize(400,200);
gui.setVisible(true);
}
}
import java.util.Scanner;
导入javax.swing.JFrame;
导入javax.swing.*;
导入java.awt.*;
导入java.awt.event.*;
公共类区域扩展JFrame{
int[]myArray;
myArray=newint[3];
myArray[0]=1;
myArray[1]=2;
myArray[2]=3;
JTextArea=新的JTextArea();

对于(inti=0;i您可以使用JTextArea

JTextArea ta = new JTextArea();
for (int i=0; i<array.length; i++)
{
    ta.append(array[i]+"\n");
}
add(ta);
JTextArea ta=新的JTextArea();

对于(inti=0;i使用JTextArea,您可以将数组保存为字符串

String text;
for(int w : array) {
   w=Integer.toString(w);
   text+=w;
}

您使用的是eclipse之类的IDE吗?如果不是,可能会有所帮助。看起来您的部分代码放错了位置。它不是构造函数或init方法,而是刚好在var偏差之下。IDE将帮助您完成这项工作。另外,请(耐心地)阅读一些更基本的教程,并查看现有的小代码

下面的代码对我很有用,在//构造函数附近对您的代码进行了小编辑

    import java.util.Scanner;
    import javax.swing.JFrame;
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;

    //put in a file called area.java
    public class area extends JFrame{


            int[] myArray;
            JTextArea area = new JTextArea();
     //constructor 
     area(){
            myArray = new int[3];
            myArray[0] = 1;
            myArray[1] = 2;
            myArray[2] = 3;




    for (int i=0; i<myArray.length; i++)
    {
            area.append(i + " " + myArray[i]+"\n");
    }
    add(area);

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

         area gui = new area();
         gui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         gui.setSize(400,200);
         gui.setVisible(true);
       }
    }
import java.util.Scanner;
导入javax.swing.JFrame;
导入javax.swing.*;
导入java.awt.*;
导入java.awt.event.*;
//放入一个名为area.java的文件
公共类区域扩展JFrame{
int[]myArray;
JTextArea=新的JTextArea();
//建造师
面积(){
myArray=newint[3];
myArray[0]=1;
myArray[1]=2;
myArray[2]=3;

对于(int i=0;iShow us,您试图做什么?GUI与在控制台上显示文本完全不同。从读取开始。您可以在JTextArea、JLIst或创建一组jLabel中显示数字。选择权在您。要将数组更改为字符串,有两个明显的选项。第一个是迭代数组中的每个元素,con动态链接:
for(int i:myArray)str+=i+”;
第二个选项是使用Arrays.toString(myArray)并删除所有的[、]和]:
Arrays.toString(myArray.replaceAll([\\[,\\]],”);
后者对于长数组更快,对于短数组更快(如果您连续多次这样做).我试着搞乱了JTextArea,我只是得到了一大堆错误,但我认为这只是我遗漏的一件小事。我将在上面发布我的代码,也许你可以教我如何做到这一点