簡體   English   中英

Integer.toString(argument)或toString(argument)

[英]Integer.toString(argument) or toString(argument)

我已經為信用卡類寫了一些代碼,粘貼在下面。 我有一個接受上述變量的構造函數,並且正在研究一些方法來將這些變量的格式設置為字符串,以便最終輸出類似於

編號:1234 5678 9012 3456
到期日:10/14
帳戶持有人:鮑勃·瓊斯
有效:正確

(格式不正確-我不確定該怎么做,希望有人可以為我編輯:))

我的問題是,

String shortYear = Integer.toString(expiryYear).substring(2,4);

為什么不能進行以下工作:

toString(argument).substring(2,4) 

我以為它會起作用(expiryYear本質上被聲明為int類型的實例變量)。 我已經查閱了我的書(也可以在網上找到官方的Java教程),但似乎找不到任何東西。 我什至不了解Integer.toString,一個朋友在嘗試使用toString()之后告訴了我,所以如果有人還可以告訴我在哪里可以找到這些方法,我將不勝感激(我不要以為他們在我的書中)

public class CreditCard {

    private int expiryMonth;
    private int expiryYear;
    private String firstName;
    private String lastName;
    private String ccNumber;

    public CreditCard(int expiryMonth, int expiryYear, String firstName, String lastName, String ccNumber) {
        this.expiryMonth = expiryMonth;
        this.expiryYear = expiryYear;
        this.firstName = firstName;
        this.lastName = lastName;
        this.ccNumber = ccNumber;
    }

    public String formatExpiryDate() {
        String shortYear = Integer.toString(expiryYear).substring(2, 4);
        String expiryDate = expiryMonth + "/" + shortYear;
        return expiryDate;
    }

    public static void main(String[] args) {
        CreditCard cc1 = new CreditCard(10, 2014, "Bob", "Jones", "1234567890123456");

        System.out.print(cc1.formatExpiryDate());
    }
}

試試String.valueOf(expiryYear).substring(2,4)

暫無
暫無

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

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