import java.util.*;
import java.io.*;
public String recToString (boolean format) {
Date date = new Date();
File inputFile = new File ("records.txt");
Scanner sc = new Scanner(inputFile);
if (format == true){
format = Date1.usFormat();
format = Date1.usFormat();
} else {
format = Date1.euFormat();
}
}
我打算称usFormat和euFormat。
import java.util.*;
import java.io.*;
class Date1 {
String month = "";
String day = "";
String year = "";
public Date1 (String date) {
StringTokenizer st = new StringTokenizer(date, "/");
month = st.nextToken();
day = st.nextToken();
year = st.nextToken();
} //end constructor
public String usFormat () {
String date = month + "/" + day + "/" + year;
return date;
} //end usFormat
public String euFormat () {
String date = day + "/" + month + "/" + year;
return date;
} //end euFormat
} //end class
请尝试忽略任何其他错误。但是,如果它搞砸了,我必须更改它才能得到它,请告诉:)
谢谢。
您需要构造一个Date1
对象并对其调用方法。 你需要做类似的事情
...
String dateString = ...
Date1 date1 = new Date1(dateString);
if (format){
format = date1.usFormat();
} else {
format = date1.euFormat();
}
在这种情况下,
我通常会执行以下操作
format = new Date1(date.toString()).usFormat();
format = new Date1(date.toString()).usFormat();
不知道为什么你不把它们变成静态的。
你正在调用:
Date1.usFormat();
像我们格式是一个静态方法。但是,正如你已经说过的,事实并非如此。 您需要通过以下方式创建 Date1 的实例:
Date1 myDate1 = new Date1("01/01/2001");
之后,您可以使用 myDate1 对象调用任一格式方法,如下所示:
format = myDate1.usFormat();