我试图创建一个简单的程序来输出用户输入的星数。我试图学习如何使用多种方法来做到这一点 这是我的代码
import java.util.Scanner;
public class Alpha
{
public static void main(String args[])
{
Scanner input = new Scanner(System.in);
int n;
System.out.println("Enter no. of stars");
n = input.nextInt();
}
public static void Loop ()
{
for (int counter = 1; counter <= n; counter++)
{
System.out.println("*");
}
}
}
我面临的问题是在Loop方法中,我无法使用变量n 有没有办法在另一个中使用main方法中的变量? TY
-Pingu
答案 0 :(得分:2)
只需将其作为参数传递:
public static void main(String args[])
{
Scanner input = new Scanner(System.in);
int n;
System.out.println("Enter no. of stars");
n = input.nextInt();
Loop(n);
}
public static void Loop (int count)
{
for (int counter = 1; counter <= count; counter++)
{
System.out.println("*");
}
}
答案 1 :(得分:2)
将其作为参数传递
myApp.service('DataProcessor', ['$injector', function($injector) {
var service;
$scope.init = function (serviceName) {
service = $injector.get(serviceName);
}
this.processData = function(uri) {
// use the service ...
}
}]);
答案 2 :(得分:2)
import java.util.Scanner;
public class Alpha
{
public static void main(String args[])
{
Scanner input = new Scanner(System.in);
int n;
System.out.println("Enter no. of stars");
n = input.nextInt();
Loop(n); //calls Loop function and passes parameter n
}
public static void Loop(int n) //this function now expects a number n
{
for (int counter = 1; counter <= n; counter++)
{
System.out.println("*");
}
}
}
答案 3 :(得分:1)
我认为您应该将它用作实例变量,并且为了更好地理解您的类,如StarClass
,它可以提供更好的理解。良好的编程实践。
但是你应该避免不必要地制作实例变量而没有任何逻辑。
答案 4 :(得分:0)
我也认为你可以将n声明为公共变量。 这应该可以在整个代码中访问它。
public int n;
但我想将它作为参数传递是一种更好的做法,因为你不会在代码中创建一个deppendance。我的意思是,如果某些内容随变量而变化,则会破坏该功能。在代码中始终保持“模块化”是一种很好的做法,因此它使更改和调试更具弹性。 如果你习惯于beggining =)
,那就更好了答案 5 :(得分:0)
两种方式......一种已经作为答案发布,另一种方式将变量用作字段。通过这种方式,您可以在每种方法中访问(并修改)它,而无需将其传递。
public class Alpha
{
static int n;
public static void main(String args[])
{
Scanner input = new Scanner(System.in);
System.out.println("Enter no. of stars");
n = input.nextInt();
loop();
}
public static void loop ()
{
for (int counter = 0; counter < n; counter++)
{
System.out.println("*");
}
}
}
请用小写开始方法名称并用0计数。这是常见的做法,从一开始就使用标准有很大帮助。