[英]Java string array with setter getter
我想为用户创建一个简单的程序,将 3 个字符串插入到 class 中的私有字符串数组中,然后通过使用 object 参考创建一个新的 object 将其打印回来,但我认为我是新人面临的问题。到 class 和 setter/getter)这是我到目前为止所拥有的:
import java.util.Scanner;
public class Stringtest {
public static void main(String[] args)
{ Scanner input=new Scanner(System.in);
Stringer Strung=new Stringer();
System.out.println("Strings:"+Strung.print());
}
}
class Stringer
{ Scanner input=new Scanner(System.in);
private String[] aa=new String[3];
aa[0]="zero";
aa[1]="one";
aa[2]="two";
Stringer()
{}
{ System.out.println("Please enter 3 strings:");
for(int i=0;i<4;i++)
{
aa[i]=input.next();
}
}
public void setaa(String[] a)
{
aa=a;
}
public String[] getaa()
{
return aa;
}
public void print(String[] a)
{
for(int b=0;b<4;b++)
{
System.out.printf("%s",a[b]);
}
}
}
由于在创建 class 实例时填充了数组,因此您不需要任何设置器。 唯一的吸气剂需要。
将逻辑与跑步者分开。
循环时始终使用array.length()
或使用简单for
循环,否则您将收到indexOfBoudException
错误。
不明白为什么在打印结果时使用printf()
。
我的解决方案:
import java.util.Scanner; public class App { public static void main(String[] args) { App.run(); } private static void run() { Stringer stringer = new Stringer(); stringer.print(stringer.getStrings()); } } class Stringer { private String[] strings = new String[3]; Stringer() { System.out.println("Please enter 3 strings:"); for (int i = 0; i < 4; i++) { Scanner scanner = new Scanner(System.in); strings[i] = scanner.next(); } } String[] getStrings() { return strings; } void print(String[] strings) { System.out.println("Strings are:"); for (String string: strings) { System.out.println(string); } } }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.