Collection<string></string> c = new ArrayList(); c.add(new Date()); |
add(java.lang.String) in java.util.Collection<java></java> cannot be applied to (java.util.Date) |
void processAll(Collection c){ for(Iterator i=c.iterator(); i.hasNext();){ MyClass myObject = (MyClass)i.next(); myObject.process(); } } |
void processAll(Collection<myclass></myclass> c){ for (MyClass myObject :c) myObject.process(); } |
int a = 3; Collection c = new ArrayList(); c.add(a);//自动转换成Integer. Integer b = new Integer(2); c.add(b + 2); |
public enum Color { Red, White, Blue } |
for (Color c : Color.values()) System.out.println(c); |
util.write(obj1); util.write(obj1,obj2); util.write(obj1,obj2,obj3); … |
public void write(Object... objs) { for (Object obj: objs) System.out.println(obj); } |
import static java.lang.Math.*; ……. r = sin(PI * 2); //无需再写r = Math.sin(Math.PI); |
数据的输入Scanner
Scanner是SDK1.5新增的一个类,可是使用该类创建一个对象.
Scanner reader=new Scanner(System.in);
然后reader对象调用下列方法(函数),读取用户在命令行输入的各种数据类型:
next.Byte(),nextDouble(),nextFloat,nextInt(),nextLine(),nextLong(),nextShot()
上述方法执行时都会造成堵塞,等待用户在命令行输入数据回车确认.例如,拥护在键盘输入12.34,hasNextFloat()的值是true,而hasNextInt()的值是false. NextLine()等待用户输入一个文本行并且回车,该方法得到一个String类型的数据
import java.util;
public class Example
{
public static void main(String args[])
{
System.out.println(“请输入若干个数,每输入一个数用回车确认”);
Sytem.out.println(“最后输入一个非数字结束输入操作”);
Scanner reader=new Scanner(System.in);
double sum=0;
int m=0;
while(reader.hasNextDouble())
{
double x=reader.nextDouble();
m=m+1;
sum=sum+x;
}
System.out.print(“%d个数的和为%f\n”,m,sum);
System.out.print(“%d个数的平均值是%f\n”,m,sum/m);
}
}