public class Test { /**
* @param args
*/
public static void main(String[] args) {
Date date = new Date();
String dates = String.format(null, "%tF", date);
System.out.println(dates);
}}这是程序。我也从网上查了好久。都说是没有main方法。
还是没解决 。请教大虾了。。
什么原因?怎么改?
解决方案 »
- exec运行程序一闪而过
- 找错
- 十万火急,怎样实现点击一个按钮隐藏一个面板,象qq登录时的设置按钮一样!!
- java的向上转型,好象有的叫向上塑性!求高手们指点,越清晰越好!
- RandomAccess接口是随机访问集合中的元素的,但ArrayList类我没有找到随机取的方法,怎么回事,感谢
- 请教内部类的程序
- 那位高手能不能帮我把这个C++代码改成java的,100分重谢
- 菜鸟提问,写了一个applet,编译了,嵌入到一个页面,然后用IE浏览该页面时,只显示一个灰色的方框,为什么?
- question
- 谁能告诉我visibroker for java 4.5的序列号。4.0也行。谢谢!
- 这个正则表达式为什么是这个意思?
- JComboBox下拉框弹出JTable可以实现吗?
重新编译;如何重新编译?
用eclipse工具。如何重新编译。
是吧class文件夹里的class文件删了。然后报错吗??
不行。该试的都试了。 百度google了一上午了。。没用的。
用的jdk也不是eclipse自带的。是自己下载的呀。
哎。。
//LZ 你在搞笑,你的程序根本就没编译就拿出来说没main方法。
//按下面的程序,粘贴到你的编辑器中,保存后重新编译。
import java.util.*;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
Date date = new Date();
String dates = String.format("%tF", date);
System.out.println(dates);
}
}
return new Formatter(l).format(format, args).toString();
}
public static String format(String format, Object ... args) {
return new Formatter().format(format, args).toString();
}因为后面跟着的是可变数组 对于null可以理解为时Locle 也可以认为是字符串
编译器应该不会知道调用那个方法
楼主再试一下
Date date = new Date();
String dates = String.format("%tF", date);
System.out.println(dates);
}
如果还不行 那是你环境的问题了
我真想把图片粘贴出来看看。
如果加了Local jvm所处的环境。就报错;
如果设为null就没事。还有朋友说这个程序没有编译。
怎么肯能呢。用了这么长时间的java了
没有编译我就运行。我不是很二吗?我还是感觉环境的问题。。
位置: 类 Test3
Date date = new java.util.Date();
^
1 错误I:\java>javac Test3.java
Test3.java:10: 对 format 的引用不明确,java.lang.String 中的 方法 format(java.la
ng.String,java.lang.Object...) 和 java.lang.String 中的 方法 format(java.util.Lo
cale,java.lang.String,java.lang.Object...) 都匹配
String dates = String.format(null, "%tF", date);
^
1 错误I:\java>javac Test3.javaI:\java>java Test3
2011-08-20I:\java>javac Test3.javaI:\java>java Test3
2011-08-20I:\java>
import java.util.Locale;public class thread {
public static void main(String[] args) {
Date date = new Date();
String dates = String.format(Locale.getDefault(), "%tF", date);
System.out.println(dates); }
}为null编译不过 jdk1.6
import java.util.Locale;public class test{
public static void main(String[] args) {
Date date = new Date();
Locale l = null;
String dates = "";
try {
dates = String.format(l, "%tF", date);
} catch (Exception e) {
// e.printStackTrace();
dates = String.format("%tF", date);
}
System.out.println(dates);
}
}
l为null会为空format
看下api
public static String format(String format,
Object... args)使用指定的格式字符串和参数返回一个格式化字符串。
始终使用的语言环境是由 Locale.getDefault() 返回的语言环境。
参数:
format - 格式字符串
args - 在格式字符串中由格式说明符引用的参数。如果还有格式说明符以外的参数,则忽略这些额外的参数。参数是可变的并且可以为 0。参数的最大数目受《Java Virtual Machine Specification》所定义的 Java 数组的最大维度的限制。针对 null 参数的行为依赖于 转换。
返回:
一个格式化字符串
抛出:
IllegalFormatException - 如果格式字符串中包含非法语法,与给定的参数不兼容的格式说明符,格式字符串给定的参数不够,或存在其他非法条件。有关所有可能的格式化错误的规范,请参阅 formatter 类规范的 Details 一节。
NullPointerException - 如果 format 为 null
从以下版本开始:
1.5
另请参见:
Formatter
指针
可以看到
String dates = String.format(Locale.getDefault(), "%tF", date);
和dates = String.format("%tF", date);是一个效果
所以没必要写前面的null都可以
你还用的javac呀。。我在工具里面呢。好吧我再试试吧
谢谢了 。