java - 使用java数组

标签 java

我的文本文件中有 7 行数据(如下所示)。

name: abcd
temp: 623.2
vel: 8

name: xyz
temp: 432
vel: 7.6

使用正则表达式,我能够读取这些数据,并且能够将其打印出来。现在我需要将这些数据存储在某个变量中。我倾向于将这些数据存储在数组/矩阵中。从物理上来说,它看起来像这样:

  data = [abcd, 623.2, 8 
          xyz, 432, 7.6]

所以实际上,第一行包含前3行,第二行包含从5到7行。我选择这种类型的变量进行存储的原因是,从长远来看,调用数据会更简单 -如:

   data[0][0] = abcd
   data[1][1] = 432 

我无法使用 math.nist.gov 中的 java 矩阵文件,因为我不是 root 用户,并且让 IT 部门在我的计算机上安装东西被证明是一种严重的时间浪费。所以我想使用我拥有的资源 - Eclipse 和 java 安装版本 1.6。

我想获取此数据并将其存储到 java 数组变量中。我想知道的是:选择数组变量是正确的处理方法吗?或者我应该使用 vector 变量(尽管在我看来,使用 vector 变量会使事情变得复杂)?或者是否有其他变量可以让我轻松存储数据并轻松调用它

顺便说一句,关于我的 java 安装的更多详细信息 - 如果它以某种方式有所帮助:

OpenJDK 运行时环境(版本 1.6.0-b09) OpenJDK 64 位服务器虚拟机(版本 1.6.0-b09,混合模式)

感谢您的帮助

最佳答案

在我看来

name: abcd
temp: 623.2
vel: 8

是某种对象,你最好存储 list其中例如您将定义一个对象

public class MyObject {
   private String name;
   private double temp;
   private double vel;

   // etc...
}

(也许 - 可能有更合适的类型),并将它们存储在列表中:

List<MyObject>

如果您需要通过名称属性对它们进行索引,那么也许可以存储 map (例如 Map<String, MyObject> )其中键是对象的名称。

我建议为这些创建一个对象,因为要求 obj.getName() 非常容易。等等,而不是记住或计算数组索引偏移量。展望 future ,您将能够向这些对象添加行为(例如,您有一个 temp 字段 - 您可以使用一个对象以摄氏度/开尔文/华氏度等检索该对象)。将原始数据存储在数组中并不能真正让您利用 OO 语言的功能。

(请注意您的安装问题 - 这些类是 Java JRE/JDK 原生的,不需要安装。它们是 Java 中许多程序的基础)

关于java - 使用java数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11230798/

相关文章:

java - Eclipse Neon Local Websphere 未启动

java - 如何减小图像尺寸?

java - Jackson 序列化 可选,YAML 值为空

java - Spring:java.lang.NoClassDefFoundError:无法初始化类

java - Java 中的命令行界面

java - java打印和返回数组

java - Math.(E|PI) 和 StrictMath 有什么区别?

java - 如何使用 Bouncy CaSTLe 从 Java 中的 ECDSA 私钥获取公钥?

java - 我可以将什么作为第二个参数传递给 java 反射的 getMethod 以表示没有参数?

java - JdbcRowSet 返回 SQL 异常