gpt4 book ai didi

Java:根据用户输入将变量分配给数组

转载 作者:行者123 更新时间:2023-11-29 09:19:36 24 4
gpt4 key购买 nike

我是 Java 的初学者,所以如果我犯了一些 derp 错误,请原谅我......

我有一个 JComboBox 分配给一个名为 fileNames 的数组。我的目标是让 JComboBox 显示特定目录中的所有文件名。到目前为止,我已经制定了将目录中的所有文件分配给一个名为 files 的字符串的代码。
代码:

package modmaker;

public class GuiBlocks2 extends JFrame {
/**
*
*/
private static final long serialVersionUID = 1L;
public JFileChooser filePath;
FileEditor fileeditor = new FileEditor();
/**
* Launch the application.
*/
static String files;
static String[] fileNames={files};
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
GuiBlocks2 frame = new GuiBlocks2();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
// Directory path here
String path = ".";
File folder = new File(path);
File[] listOfFiles = folder.listFiles();

for (int i = 0; i < listOfFiles.length; i++)
{

if (listOfFiles[i].isFile())
{
files = listOfFiles[i].getName();
if (files.endsWith(".png") || files.endsWith(".PNG"))
{
System.out.println(files);
}
}
}
}

在此之后,还有另一种方法可以添加分配给 fileNames 数组的组合框。我的问题:如何将所有文件分配给数组。

最佳答案

如果你想要当前目录中所有文件的数组,你可以简单地创建一个字符串对象并将每个文件名(在循环中)添加到它。你应该在它们之间添加一个分隔符,如“:”。

我这样修改你的代码:

String fileList ="";
for (int i = 0; i < listOfFiles.length; i++)
{

if (listOfFiles[i].isFile())
{
files = listOfFiles[i].getName();
fileList += files + ":";
if (files.endsWith(".png") || files.endsWith(".PNG"))
{
System.out.println(files);
}
}

现在如果你想得到所有文件名的数组,你可以简单地使用 split 方法。我将该数组分配给一个名为 allFile 的新字符串数组;

String[] allFile = fileList.split(":");

关于Java:根据用户输入将变量分配给数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7278219/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com