Tag: 对象

将2D数组(String)存储到文件并检索它

我做了一个简单的程序,它有一个存储大量数据的2D String数组。 我搜索了很多地方,了解如何存储和检索2D数组。 我想在程序结束时将数据保存在我的数组中,并在程序启动时检索这些数据。 我试过: ObjectOutputStream toFile = new ObjectOutputStream(new FileWriter(“array.DATA”)); toFile.writeObject(array); ObjectOutputStream toFile = new ObjectOutputStream(new FileWriter(“array.DATA”)); toFile.writeObject(array); 这就产生了错误:不兼容的类型:FileWriter无法转换为OutputStream 我只知道基本的编程,所以试着对我很轻松并解释你所说的一切。 如果我老实说我甚至都不知道’ObjectOutputStream’是什么。 提前谢谢了

Java:为什么我不能在main之外调用这个方法?

作为一个初学者,我想知道为什么我的caller.VelocityC只有在放入主块时才能工作? 当我有这样的代码时,我无法调用该方法。 方法调用类: public class Velocity2 { VelocityCounter caller = new VelocityCounter(); caller.VelocityC(6, 3); } 包含方法的类: public class VelocityCounter { void VelocityC(int s, int v){ System.out.print(s/v); } }

Java:XML到对象(或数组)

我怎么能将XML文档转换为Java对象(或数组)? 我像这样重写XML: DocumentBuilderFactory dFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder dBuilder = dFactory.newDocumentBuilder(); Document doc = dBuilder.parse(new File(“file.xml”)); doc.getDocumentElement().normalize(); 现在我希望XML作为对象(或数组),但我该怎么做呢? 是否有任何方法或教程或课程可以做到这一点?

如何在java中读取文件时动态创建嵌套对象?

假设我有一个文本文件,其中包含以下行。 Add apple banana strawberry 当我读取该行并用空格分割时。 我得到apple, banana, strawberry ,我想用我定义的类和使用装饰模式创建嵌套对象 new apple(new banana(new strawberry())) 我试过这个; new splited[1](new splited[2](new splited[3]()))) 但它不起作用。 如何动态创建它,因为每行可以包含不同数量的水果。 如果不对每个组合使用if语句,如2嵌套或3嵌套,我怎么能这样做?

使用用户输入创建新对象

嗨我正在尝试创建一个程序,以便在用户输入特定对象的新信息时创建新对象。 目前我有这个。 import java.util.Scanner; public class Main { public static void main (String args[]) { String input; Scanner scanner = new Scanner(System.in); do { System.out.println(“Computer Menu”); System.out.println(“1. Add a new Desktop Information”); System.out.println(“2. Add a new Laptop Information”); System.out.println(“3. Display all Computer Information”); System.out.println(“4. Quit”); System.out.print(“Please enter either 1 to 4: “); input =(scanner.nextLine()); if […]

使用数组时出现NullPointerException

我正在尝试为在线Java课程创建一个程序。 该程序包括Employee类和Name类。 我必须创建多个Employee对象并提示用户输入员工的姓名。 我将所有Employee对象存储在一个雇员数组中。 这是代码: //Creates employee array with the number of array elements being however many //employees there are: Employee employee[] = new Employee [ numEmp ]; for( int j = 0; j < numEmp; j++ ) { System.out.println( "Please enter the first name of employee number " + ( j + 1 ) […]

通过ObjectOutputStream发送文件,然后将其保存在Java中?

我有这个简单的服务器/客户端应用程序 我正在尝试让服务器通过OutputStream(FileOutputStream,OutputStream,ObjectOutputStream等)发送文件,并在将其保存到实际文件之前在客户端接收它。 问题是,我试过这样做,但它一直都失败了。 每当我创建文件并将从服务器收到的对象写入其中时,我都会得到一个损坏的图像(我只是将其保存为jpg,但这无关紧要)。 以下是最有可能出现故障的代码部分(您在此处看到的所有看似未声明的对象都已事先声明过): 服务器: ObjectOutputStream outToClient = new ObjectOutputStream( connSocket.getOutputStream()); File imgFile = new File(dir + children[0]); outToClient.writeObject(imgFile); outToClient.flush(); 客户: ObjectInputStream inFromServer = new ObjectInputStream( clientSocket.getInputStream()); ObjectOutputStream saveImage = new ObjectOutputStream( new FileOutputStream(“D:/ServerMapCopy/gday.jpg”)); saveImage.writeObject(inFromServer.readObject()); 所以,我的问题是我无法正确地通过流获取对象而不会丢失文件。

equals方法是否适用于对象? 如果是这样,怎么样?

我有一个动物园的计划,在动物园里有分支的亚群动物是爬行动物。 当我做一个equals方法时,主程序编译并运行。 我很困惑,如果我比较对象而不是特定的int或String,java知道如何使用equals方法? public class Zoo { public static void main(String[]args) { Animal a=new Animal(“Bob”); Reptile komodo= new Reptile(“Snakey”); komodo.bask(); a.size=3; komodo.size=5; System.out.println(a); System.out.println(komodo); Turtle t= new Turtle(“Slowy”); t.hide(); t.size=6; t.numlegs=4; System.out.println(t); System.out.println(t.equals(komodo)); } } public class Animal { public String name; public boolean equals(Animal other) { return other.size==this.size; } public Animal(String s) { name=s; […]

Java – 更改对象后更新JList

我有一个使用DefaultListModel的JList。 然后我将值添加到模型中,然后出现在JList中。 我创建了一个MouseListener(双击时)允许用户编辑他们选择的那个人的当前用户号。 我已经检查过该记录的实际对象正在被更改,它是。 我遇到的唯一问题是让实际的Jlist更新以显示该对象的新值。 我当前代码的片段是: 创建JList和DefaultTableModel: m = new DefaultListModel(); m.addListDataListener(this); jl = new JList(m); jl.addMouseListener(this); 更新对象: String sEditedNumber = JOptionPane.showInputDialog(this, “Edit number for ” + name, number); if (sEditedNumber != null) { directory.update (name, sEditedNumber); } 并且(当jl是JList而m是DefaultTableModel时): public void contentsChanged(ListDataEvent arg0) { jl.setModel(m); }

使用类变量与将本地变量发送到函数/方法

何时将局部变量作为参数推送到函数/方法,而不是使用类变量代替函数/方法变量。 例如,我可以有一个function: int DoSomething(int var) { if(var == -1) return 0; } 或者我可以有一个类变量“_var”并在同一个函数中使用它,如下所示: int DoSomething() { if(_var == -1) return 0; } 我的想法是,如果我们在一些函数/方法中使用了一个类变量,在上面的例子中称为DoSomething ,我应该将DoSomething函数/方法作为参数发送给类变量,以便函数更容易阅读和测试。 什么时候做好forms? 我知道这是一个有问题的问题,但是我试图用同事来说明我的论点,他们说我会在函数/方法签名中添加更多代码,而不是保留函数/方法签名较小。 在我看来,我通过将类变量推送到相应的函数/方法来使代码更清晰,更容易维护,而不是强迫它们依赖/了解类变量的存在。 请指教。