Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在数组中使用单独类中的变量?_Java_Arrays_Class - Fatal编程技术网

Java 如何在数组中使用单独类中的变量?

Java 如何在数组中使用单独类中的变量?,java,arrays,class,Java,Arrays,Class,我正在练习Java编程,当我学习类和数组时,我发现自己被困在打印数组上。我试图使用我在单独的类中创建的变量,但我不确定如何添加值以及如何打印它们 class A { int a; String b;} public class testnew { public static void main(String[] args) { A[] test = new A[100]; test[0] = new A(); test[0].a = 1; test[0].

我正在练习Java编程,当我学习类和数组时,我发现自己被困在打印数组上。我试图使用我在单独的类中创建的变量,但我不确定如何添加值以及如何打印它们

class A {
int a;
String b;}


public class testnew {
  public static void main(String[] args) {
    A[] test = new A[100];
    test[0] = new A();
    test[0].a = 1;
    test[0].b = "2";
    System.out.println(test[0].a + test[0].b);
    
  }
}

这与数组或其他类无关。在这里,请保持简单:

public static void main(String[] args) {
    int a = 1;
    String b = "2";
    System.out.println(a + b);
}
这将打印
12
。如果我没弄错你的问题,你的问题是:“呃,我想让它打印3。”。因此,忘掉数组部分和其他类部分——这些位工作得很好。添加
1
“2”
的工作让你感到困惑

Java是强类型的<代码>“2”是一个字符串。此字符串包含数字字符这一事实不会改变任何内容。这是一根绳子。时期不管字符串的内容是什么,字符串的行为都是相同的

在java中,
+
操作符实际上是一个符号,它完成两个完全不同、完全不相关的事情。一个真正的枪和奶奶的情况

这两件完全不同的事情中的哪一件是在编译时决定的

如果左侧或右侧是字符串类型的表达式,+,则表示字符串串联

如果左侧和右侧都是数字,则为加法

否则,这是一个错误

这里,左手边是一个
int
(数字),右手边是一个字符串。因此,+意味着字符串串联,操作是通过首先将所有相关输入转换为字符串来执行的(因此,1变为
“1”
,而
“2”
保持
“2”
),然后串联这2,生成
“12”

如果要将字符串转换为数字,则需要:

int c = Integer.parseInt("2");
System.out.println(c); // 2
int d = 1 + c;
System.out.println(d); // 3

在上面的代码中,
1
是一个数字,
c
是一个数字,因此,
+
现在表示加法,所以它是这样的:d现在是3,而不是12。

请阅读“如何创建a”。然后使用链接改进您的问题(不要通过评论添加更多信息)。否则,我们无法回答您的问题并帮助您。你的代码打印数字1。。。然后直接打印字符串“2”。因此,您将获得打印给您的
12
。但是,当你没有告诉我们你期望发生什么时,正如我们所说的:我们不能帮助你,除非你告诉我们你在这里考虑的问题。你想看看如何实现<代码> toString()/<代码> <代码> <代码>,或者如何循环数组元素并单独打印每一个元素(或者先建立一个字符串,然后在循环之后打印它)。