繁体   English   中英

从同一个对象获得不同的输出

[英]getting different outputs from the same object

我将为两个不同的对象调用readInput()。 但是在第一个中,我希望将输出作为“用于第一行”,在第二个中,我希望将输出作为“用于第二行”。 我能怎么做? 谢谢 。

import java.util.*;

public class Nokta{

    Scanner keyboard = new Scanner(System.in);
    public void readInput()
    {
        System.out.println("for the first line ");
        String degerler = keyboard.nextLine();
    }

我会这样称呼:

Nokta dogru1 = new Nokta ();

dogru1.readInput();


Nokta dogru2 = new Nokta ();

dogru2.readInput();

尝试这个 :

Scanner keyboard = new Scanner(System.in);
public  static int counter = 1;
   public void readInput()
   {
       System.out.println("for the "+counter +"line ");
       String degerler = keyboard.nextLine();
       counter++;
   }

详细信息:类的所有对象(或实例)的静态变量值均相同

您需要为此使用static int。 简而言之,static只会在执行时初始化一次,不会在每次执行new Nokta()时初始化。有关什么是static和示例,请阅读此链接

public class Nokta{
    private static int lineNumber=1;    
    Scanner keyboard = new Scanner(System.in);
    public void readInput()
    {
        System.out.println("for the "+ lineNumber++ +" line ");
        String degerler = keyboard.nextLine();
    }

编辑:

如评论中所述,将说“对于第一行”和“对于第二行”,而不是“对于第一行”和“对于第二行”。
如果要首先使用它,可以按照如何在Java中将数字转换为单词的方法进行操作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM