Java(一)环境:2.运行之命令行运行java文件


一、cmd下运行java文件

1.命令格式

javac xxx.java		编译java格式的文件成class格式的文件,compile编译
java xxx			运行xxx的class文件,不能写.class后缀,否则错

2.例子

  1. 写一份java文件,找到存储的路径为"D:\Mystring\eclipse_project\Hello\src"
public class Main{
	public static void main(String[] args) {
		System.out.println("Hello World");
	}
}
  1. 在cmd中使用cd命令到达那个位置,然后开始编译执行。
D:\>cd D:\Mystring\eclipse_project\Hello\src

D:\Mystring\eclipse_project\Hello\src>javac Main.java

D:\Mystring\eclipse_project\Hello\src>java Main
Hello World

3.找不到或无法加载主类

package XXX;去掉。

二、输出cmd下的参数

1.命令格式

java命令下同时写上参数,而不是在javac命令。javac命令是负责编译生成class文件,java命令才负责执行和传入参数。

java xxx hello world 123
java xxx "hello world 123"

一般是用前者。

2.例子1:以格式1的方式

public class SumOfArgs {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		for(int i=0;i<args.length;i++)
		{
			System.out.print(args[i]);
		}
	}
}
D:\Eclipse\MyJavaCode\SumOfArgs\src>javac SumOfArgs.java

D:\Eclipse\MyJavaCode\SumOfArgs\src>java SumOfArgs hello world 123
helloworld123

可以看到结果是省去了中间的空格。因为它将hello看作args[0],world看作args[1],123看作args[2],空格作为中断符。

3.例子2:以格式2的方式

public class SumOfArgs {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println(args[0]);
	}
}
D:\Eclipse\MyJavaCode\SumOfArgs\src>javac SumOfArgs.java

D:\Eclipse\MyJavaCode\SumOfArgs\src>java SumOfArgs "hello world 123"
hello world 123

这样它就将"hello world 123"作为一整个字符串,而不会拆分。

三、例题

在这里插入图片描述

public class SumOfArgs {

	public static void main(String[] args) {
		
		int sum=0;

		for(int i=0;i<args.length;i++)
		{
			boolean isNum=true;
			for(int j=0;j<args[i].length();j++)
			{
				if(args[i].charAt(0)=='-') continue;
				if(args[i].charAt(j)<48 || args[i].charAt(j)>57)
				{
					isNum=false;
					break;
				}
			}
			if(isNum) sum+=Integer.parseInt(args[i]);
		}
		
		System.out.print(sum);
	}
}
D:\Eclipse\MyJavaCode\SumOfArgs\src>javac SumOfArgs.java

D:\Eclipse\MyJavaCode\SumOfArgs\src>java SumOfArgs hello 123 hello123 -23 45
145
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值