我是java的全新学生,我一直在搜索谷歌和我的教科书,以弄清楚使用私有静态布尔值究竟意味着什么,虽然它们都没有任何意义所以我想我会问专家。我的问题是我需要使用私有静态类,虽然我不知道如何从main绘制我需要的数据(这是我的教授已经写好的)。你有什么建议或见解吗?我基本上将我已经以嵌套循环形式编写的代码转换为私有类。
编辑: 这就是我必须要做的事情(我不是在寻找讲义)
import java.io.*;
import java.util.*;
public class Foo
{
public static void main (String[] args) throws Exception
{
int lo = 0;
int hi = 0;
String infileName;
if (args.length < 3)
{
System.out.println("CMD LINE INPUT ERROR: Must enter 2 numbers followed by name of input file on cmd line.");
System.exit(0);
}
lo = Integer.parseInt(args[0]);
hi = Integer.parseInt(args[1]);
infileName = args[2];
for( int n = lo; n<=hi; n++)
if (isPrime(n))
System.out.print(n + " ");
System.out.println();
for( int n=lo; n<=hi; n++)
if (isPerfect(n))
System.out.print(n + " ");
System.out.println();
while (infile.ready())
{
String line = infile.readLine();
if ( isPalindrome( line ) )
System.out.println( line + " IS a palindrome");
else
System.out.println( line + "is NOT a palindrome");
}
infile.close();
}
}
任务分为三部分:查找素数,完美数字和回文。 对于第1部分的示例,我之前使用以下内容来查找素数
for(int i= lo; i < hi; i++)
{
boolean isPrime = true;
for(int j=2; j < i ; j++)
{
if(i % j == 0)
{
isPrime = false;
break;
}
}
if(isPrime)
System.out.print(i + " ");
}
System.out.println();
我大多不确定如何以新的方式应用我已经知道的东西。
答案 0 :(得分:2)
首先,您提到了私有静态类,您可以拥有静态内部类。但你不能用私有修饰符标记一个类(外部类),即你不能拥有私有类(外部类)。 外部类只能用公共或最终或抽象或默认(无修饰符)
标记private static boolean:
私有是访问修饰符,可用于实例变量和方法。 私有变量和私有方法仅限于声明它们的类。
静态是非访问修饰符,可用于变量和方法。静态变量由类的所有实例共享。
布尔是原始数据类型,可以是true或false。
如果将布尔变量声明为私有静态,如
class MyClass {
private static boolean bool;
}
1。这个bool变量只能从定义它的类(MyClass)中访问。
2.为此类创建的所有实例(MyClass)都共享此bool变量。
答案 1 :(得分:0)
您不会将主要主跳转中的数据转移到其他功能,并将所需数据传递给它们。如果你在谈论成员变量,基本上只是移动当前本地的变量,但是不止一次地使用在类块之下而不是在任何函数中。
答案 2 :(得分:0)
你对“阶级”这个词的使用令人困惑,虽然我相信你实际上是指“方法”而不是“阶级”
通过“private static boolean”我猜你在谈论方法的 header ,这是一个代码块,可以调用(调用)在程序的任何一点。一种方法通常会接受一定数量的参数,但通常但不总是返回一个值。
private:将方法的使用限制在类中。
static:一个静态的方法可以直接通过类名访问,不需要任何对象,即ClassName.methodName()与ObjectName.methodName()。
boolean:只是意味着该方法返回 boolean 值。
您的代码可能如下所示:
private static boolean isBiggerThanZero( int number)
{
boolean isBigger = false;
//Do something with number or test it for a condition
if( number > 0 )
isBigger = true;
return isBigger;
}