Java中用户向系统传递参数的三种基本方式实例分享
使用main方法的参数传递方式
例示代码如下:
public class mainargs
{
public static void main(string[] args)
{
system.out.println(args.length);
for(string str : args){
system.out.println(str);
}
}
}
在运行 java程序后面跟的字符串(一个或多个 多个用空格隔开)jvm将会把这些一个或多个字符串赋给args数组。当字符串中包含空格时则需要将完整的一个字符串用“”括起来。如下示例:
使用scanner类进行用户输入:可以输入用户指定的数据类型
scanner 使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。然后可以使用不同的 next 方法将得到的标记转换为不同类型的值。
例示代码如下:
import java.util.scanner;
import java.io.file;
public class scannerkeyboardtest
{
public static void main(string[] args) throws exception
{
//readfilecon();
//test2();
//通过键盘输入指定类型
scanner scan = new scanner(system.in);
long l = scan.nextlong();
system.out.println("l is "+l);
}
//读取任何的数据输入返回string
public static void test1(){
scanner scan = new scanner(system.in);
//使用 回车键 作为分隔符 默认使用 空格 制表键 回车作为分割付。
//scan.usedelimiter("\n");
while(scan.hasnext()){
system.out.println("next is " + scan.next());
}
}
//读取long型数据的输入返回long
public static void test2(){
scanner scan = new scanner(system.in);
//当输入的为 非 long数值时 推出循环
while(scan.hasnextlong()){//阻塞式
//system.out.println("has over scan.nextlong() begin....");
system.out.println("next is " + scan.nextlong());
//system.out.println("scan.nextlong() over has begin....");
}
}
//读取文件中的内容 并打印到控制台
public static void readfilecon()throws exception
{
scanner scan = new scanner(new file("scannerkeyboardtest.java"));
system.out.println("filecontent is:");
while(scan.hasnextline()){
system.out.println(scan.nextline());
}
}
}
使用bufferedreader类读取用户的输入:返回的只能是string类
例示代码如下
import java.io.bufferedreader;
import java.io.inputstreamreader;
class bufferreaderkeyboardtest
{
public static void main(string[] args) throws exception
{
bufferedreader br = new bufferedreader(new inputstreamreader(system.in));
string in = null;
while((in = br.readline()) != null){
system.out.println("用户输入的是: "+in);
}
}
}