簡體   English   中英

在控制台中顯示行號? 爪哇

[英]Display line number in console? Java

我正在嘗試將我的提款/存款交易輸出到控制台,該控制台運行良好。 但是我想在卡號旁邊用行號輸出它們。

我的代碼是:

public synchronized int withdraw(int cardId, int amount) {

    bankBalance = bankBalance - amount;
    System.out.printf("%-12s%-12s%-12s%-12s\n","line(" + cardId + ")", amount," ", + bankBalance);
    return bankBalance;
       }

public synchronized int deposit(int cardId, int amount) {

    bankBalance = bankBalance + amount;
    System.out.printf("%-12s%-12s%-12s%-12s\n","line(" + cardId + ")", " " , amount, + bankBalance);

    return bankBalance;
}

它將輸出如下:

Transaction Withdrawal  Deposit     Balance     
____________________________________________
line(3)                 5           15          
line(5)                 2           17          
line(2)     6                       11  

括號中的數字與卡號有關,我想把它保留在那里。 我也想擁有像1,2,3,4,5,6,7,8,9這樣循環的行號,其中文本“ line”是這樣的:

Transaction Withdrawal  Deposit     Balance     
____________________________________________
1(3)                     5           15          
2(5)                     2           17          
3(2)        6                       11  

有任何想法嗎?

根據您使用的synchronized修飾符,您將需要一個不會遇到並發問題的計數器。 也許您可以嘗試以下方法:

private static final AtomicInteger i = new AtomicInteger();

public synchronized int withdraw(int cardId, int amount) {
    bankBalance = bankBalance - amount;
    System.out.printf("%-12s%-12s%-12s%-12s\n", i.incrementAndGet() + "(" + cardId + ")", amount," ", + bankBalance);
    return bankBalance;
       }

public synchronized int deposit(int cardId, int amount) {

    bankBalance = bankBalance + amount;
    System.out.printf("%-12s%-12s%-12s%-12s\n", i.incrementAndGet() + "(" + cardId + ")", " " , amount, + bankBalance);

    return bankBalance;
}

您要增加lineNumber。

int lineNumber;

lineNumber++;

System.out.println("Random print statement" +lineNumber)

lineNumber++;

System.out.println("LineNumber has been increased by one" +lineNumber)

在此處輸入圖片說明

讓我知道這是否解決了您的問題!

:-)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM