)1) JDK1.5. 0或更高版本中提供的Scanner类为优化Java输入问题提供了良好的基础。 代码如下。
import Java.io.* import Java.util.*
公共类主{
publicstaticvoidmain (字符串args [ ] ) ) ) ) )。
{
scanner CIN=new scanner (newbufferedinputstream ) system.in );
}
}
直接扫描程序CIN=new扫描程序(system.in ); 把缓冲垫放进去可能会快一些。
)2)读整数(int n=cin.nextInt ); 相当于scanf('%d ',n ); 或cin n;
读字符串。 String s=cin.next (; 相当于scanf('%s )、s ); 或cin s;
读浮点数。 double t=cin.nextDouble (; 相当于scanf('%lf ',t ); 或cin t;
阅读整行: String s=cin.nextLine (; 相当于GETS(s ); 或CIN.Getline(…;
确定以下输入是否可以在cin.hasNext (或cin.hasNextInt )或cin.hasNextDouble ) )中进行
)3)输出通常可以直接在System.out.print ) )和System.out.println ) )上进行。 前者不输出换行,后者输出。
system.out.println(n; //n可以使用输出到int型同一行的多个整数
system.out.println (newinteger (n ).toString ) ) ' new integer (m ).toString );
//也可以重新定义:
staticprintwritercout=new printwriter (newbufferedoutputstream ) system.out );
cout.println(n;
)4)对于输出浮点数中保留几个小数的问题,请使用DecimalFormat类。
导入Java.text.*;
ecimal formatf=new decimal format (' #.00 # ' );
decimal format g=new decimal format (' 0.000 );
双精度a=123.45678,b=0.12;
系统. out.println (f.format (a ) );
系统. out.println (f.format (b ) );
系统. out.println (g.format (b ) );
数量:
BigInteger和BigDecimal是java.math包中的现有类,前者表示整数,后者表示浮点数
需要部署importjava.math.*//Java.math包
bigintegera=big integer.value of (100;
bigintegerb=big integer.value of (50;
bigintegerc=a.add(b )//c=a b;
//主要可以使用以下方法。
bigintegeradd(bigintegerother )。
bigintegersubtract (bigintegerother ) )。
二进制多点(二进制多点) )。
bigintegerdivide (bigintegerother )。
bigintegermod(bigintegerother )。
intcompareto(bigintegerother ) )。
静态二进制数字值(longx ) )。
//输出数字时,直接使用system.out.println(a )即可
字符串:
String类用于存储字符串,可以使用charAt方法检索其中一个字节。 计数从0开始。
字符串a=' hello '; //a.Charat(1)='e '
substring方法得到子列,如上例所示
system.out.println (a.substring (0,4 ) )//output 'Hell )。
请注意,它不包含第二个参数位置的字符。 这样,s.substring(a,b )就始终具有b-a字符。
字符串连接可以直接使用以下编号
字符串a=' hello ';
字符串b=' world ';
system.out.println(a ',' b '! )。 ); //output 'Hello,world! '
如果要直接更改字符串的字节,可以使用其他StringBuffer类。
调用递归(或其他动态方法)
在主类中,main方法必须是公共静态void,在main中调用非静态类时会显示警告消息。
创建对象后,可以从对象中调用方法。
公共类主{
是语音DFS (inta )
{
返回;
DFS(a1;
}
publicstaticvoidmain (字符串args [ ] ) ) ) ) )。
{
Main e=new Main (;
e.DFS(0;
}
}
其他注意事项:
)1) Java是面向对象的语言。 需要改变想法。 中的函数统称为方法。 请不要搞错。
)2)虽然Java的数组略有变化,但多维数组内部实际上是指针,因此Java不支持fill多维数组。
定义数组后,必须将其初始化。 例如,int[] a=new int[100];
)3)布尔型为布尔型,只有true和false两个值。 if(…)/while )…)等语句的条件下必须为boolean类型。
C/C的if(n%2) .无法用Java编译。
)4)以下java.util包中的Arrays类的几种方法可以代替C/C中的memset、qsort/sort和bsearch:
Arrays.fill ()
Arrays.sort (
Arrays.binarySearch (