Java 如何初始化数组的元素1到10,然后在打印元素的方法中使用该构造函数?
我有一个面向对象编程课的作业。我一直在尝试获取在构造函数中初始化的数组的值,并使用该构造函数中的值以另一种称为Java 如何初始化数组的元素1到10,然后在打印元素的方法中使用该构造函数?,java,arrays,constructor,Java,Arrays,Constructor,我有一个面向对象编程课的作业。我一直在尝试获取在构造函数中初始化的数组的值,并使用该构造函数中的值以另一种称为printArrayValues的方法打印它们。我似乎无法“调用”或返回方法中的值。。我已经排解故障好几个小时了,我感到很沮丧 任务的步骤如下: ExerciseOne类的构造函数将myArray初始化并实例化为一个由十个整数组成的数组,并使用for循环使用值1到10初始化数组的元素。 必须根据for循环索引变量分配值,例如,i 该类有一个名为printArrayValues的方法
printArrayValues
的方法打印它们。我似乎无法“调用”或返回方法中的值。。我已经排解故障好几个小时了,我感到很沮丧
任务的步骤如下:
类的构造函数将ExerciseOne
初始化并实例化为一个由十个整数组成的数组,并使用for循环使用值myArray
到1
初始化数组的元素。10
- 必须根据for循环索引变量分配值,例如,
李>i
- 必须根据for循环索引变量分配值,例如,
- 该类有一个名为
的方法,该方法使用for循环和printArrayValues
语句打印出数组元素的值,如示例输出所示。System.out.print()
- 此方法没有参数,也没有返回值李>
public class ExerciseOne {
public int[] myArray;
public static void main(String[] args) {
ExerciseOne aExerciseOne = new ExerciseOne();
aExerciseOne.printArrayValues();
}
ExerciseOne() {
for (int i = 0; i < myArray.length; i++) {
this.myArray = new int[i];
}
}
public void printArrayValues() {
System.out.print("myArray = {");
for (int a = 0; a < myArray.length; a++) {
System.out.print((myArray[a] + 1));
if (a < 9) {
System.out.print(",");
}
else {
System.out.print("};");
}
}
}
//
//public void displayArrayProduct() {
// for (int : myArray) {
//
// }
//
//}
}
公共课练习一{
公共int[]myArray;
公共静态void main(字符串[]args){
ExerciseOne aExerciseOne=新的ExerciseOne();
aExerciseOne.printArrayValues();
}
练习一{
for(int i=0;i
我很沮丧,只是在方法中创建了循环来初始化它。这对于作业来说是不正确的,但我想继续。老实说,我在这一点上非常迷茫,如果这使我更难帮助我,我很抱歉。您正在两次初始化同一阵列。如果您使用以下任何一种方法,您的程序也将运行:
myArray = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9 , 10};
或
我已经编写并测试了以下内容,它将返回您需要的输出。请注意,它是为控制台应用程序用C#编写的。如果有帮助的话,请记得投我一票 按如下方式创建练习一类:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace test
{
public class ExerciseOne
{
int[] eo;
public ExerciseOne()
{
eo = new int[10];
for (int i = 0; i <= 9; i++)
{
eo[i] = i + 1;
}
printArrayValues();
}
public void printArrayValues()
{
foreach (var item in eo)
{
Console.WriteLine(item);
}
Console.ReadLine();
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace test
{
class Program
{
static void Main(string[] args)
{
ExerciseOne one = new ExerciseOne();
}
}
}
你可以试试这个代码
public class ExerciseOne {
public int[] myArray = new int[10];
public static void main(String[] args) {
ExerciseOne aExerciseOne = new ExerciseOne();
aExerciseOne.printArrayValues();
}
ExerciseOne() {
for (int i = 0; i < myArray.length; i++) {
this.myArray[i] = i+1;
}
}
public void printArrayValues() {
System.out.print("myArray = {");
for (int a = 0; a < myArray.length; a++) {
System.out.print((myArray[a]));
if (a < 9) {
System.out.print(",");
}
else {
System.out.print("};");
}
}
}
}
公共课练习一{
public int[]myArray=new int[10];
公共静态void main(字符串[]args){
ExerciseOne aExerciseOne=新的ExerciseOne();
aExerciseOne.printArrayValues();
}
练习一{
for(int i=0;i
输出:myArray={1,2,3,4,5,6,7,8,9,10} 对于循环,不应该需要
myArray=newint[]{1,2,3,4,5,6,7,8,9,10}
应该已经为您完成了这项工作。对不起,那是我在做实验,我忘了是我做的。我把它删掉了。赋值需要一个for循环来初始化数组,它需要在构造函数中实例化和初始化数组。如何从构造函数中获取值,并在另一个方法中显示它们?您正在使用myArray.length
,但您似乎不知道为什么要使用它。您希望myArray.length的值是多少?谢谢。我该如何获取数组元素的值,并在另一个方法中显示它们呢?因为myArray是全局变量,所以它对所有方法都是可见的,一旦您在构造函数中初始化了它。这些值也将在另一种方法中可用。唯一的问题是您不必执行System.out.print((myArray[a]+1));您可以使用System.out.print((myArray[a]);您必须像下面这样初始化全局数组:public int[]myArray=new int[10];
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace test
{
class Program
{
static void Main(string[] args)
{
ExerciseOne one = new ExerciseOne();
}
}
}
public class ExerciseOne {
public int[] myArray = new int[10];
public static void main(String[] args) {
ExerciseOne aExerciseOne = new ExerciseOne();
aExerciseOne.printArrayValues();
}
ExerciseOne() {
for (int i = 0; i < myArray.length; i++) {
this.myArray[i] = i+1;
}
}
public void printArrayValues() {
System.out.print("myArray = {");
for (int a = 0; a < myArray.length; a++) {
System.out.print((myArray[a]));
if (a < 9) {
System.out.print(",");
}
else {
System.out.print("};");
}
}
}
}