dos命令以及命令行在Java的使用
一 .常见的命令行指令:
如何进入控制台:在windows系统中我们使用徽标键+R键,然后输入cmd进入命令行控制台,在这里我们输入我们的dos指令。
1.盘符:进入指定的盘符
2.cd… 返回上一级目录
3 mkdir 创建一个目录
4.dir 列出目录
5. rd+目录名 删除整个目录
二.用命令行运行Java文件:
如何运行:
1.新建文本文档文件,修改名称为student.java.
2.然后用记事本类的应用打开,编写代码如:
public class HelloWorld{
public static void main(String args[]){
System.out.println("HelloWorld!");
}
}
3.打开命令行控制台,进入student.java的文件目录,然后编译和运行,
编译
我们用JDK中的编译工具javac
例如:
javac 文件名.java(记得前面要有这个Java文件的目录,不然找不到。)
javac student.java
运行:
运行一样是用JDK中的运行工具java
范例:Java 文件名(后面不要加文件后缀名)
java student
常见的问题:
java类运行时显示: “错误:找不到或无法加载主类”
解决方案:
1.环境变量配置不对,到这里是运行阶段,应该是字节码编译出现问题,检查classpath是否出现问题:
CLASSPATH:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(前面有英文点号)
2.package 包问题,或者命令行编译运行的路径不对
运行的类上加了 package,就需要建立对应 package 的目录。在Java文件所在的相对应的路径,进行编译运行。
为什么我们要配置环境变量,是因为我无论是在什么路径下都能运行这个文件。如果我没有配置环境变量,那么必须要进入他的对应的目录下面运行这个文件。
三.题目
商和余数:
给定两数,除数和被除数,求出商和余数
package day03;
/*
先分析推理。
商和余数,给定两数,除数和被除数,求出商和余数
1.10/2=5 30/2=15定义一个cout,计算一共减了多少次,这个时候是为商
*/
import java.util.Scanner;
public class remainder {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("输入第一个数");
int chu = scan.nextInt();
System.out.println("输入第二个数");
Scanner s = new Scanner(System.in);
int bei = s.nextInt();
int cout = 0;
if (chu == 0 || bei == 0) {
System.out.println("为零");
}
while (chu >= bei) {
chu -= bei;
cout++;
}
System.out.println("输出cout:" + cout);
System.out.println("输出余数:" + chu);
}
}
百鸡百元问题:
每只母鸡3元,每只公鸡4元,每只小鸡0.5元,如果花费100元买100只鸡,有多少种方法
package day02;
/*
每只母鸡3元,每只公鸡4元,每只小鸡0.5元,如果花费100元买100只鸡,有多少种方法
1.用这两个公式:然后for循环不断套值
3*m+4*g+0.5*x==100;
m+j+g=100;
2.母鸡的范围时33,公鸡的范围时25
*/
public class xiaojizai {
public static void main(String[] args){
int way=1;//一共多少种方法
for(int m=0;m<=33;m++){
for(int g=0;g<=25;g++){
int j=100-m-g;
if(3*m+4*g+0.5*j==100){
System.out.println("一共有"+way+++"方法");
System.out.println("小鸡:"+j+" "+"公鸡:"+g+" "+"母鸡:"+m+" ");
}
}
}
}
}
输入年份和月份,输出天数:
package day02;
/*
输入年份和月份,输出天数
1. 1,3,5,7,8,10,12是31天,4,6,9,11是30天。2月判断是不是闰年,是的话是29天,不是28天。不是在12以内的话,就default输出有误
2.我们用switch语句,循环所有的月份。
*/
import java.util.Scanner;
public class tianshu {
public static void main(String[] args){
Scanner jin=new Scanner(System.in);
System.out.println("请输入年份和月份:");
int year=jin.nextInt();//年份
Scanner s=new Scanner(System.in);
int month=s.nextInt();//月份
switch(month){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
System.out.println(year+" "+month+"有"+31+"天");
break;
case 4:
case 6:
case 9:
case 11:
System.out.println(year+" "+month+"有"+30+"天");
break;
case 2:
if(year%400==0&&year%100!=0||year/4==0){
System.out.println("这个是闰年"+year+" "+month+"有"+29+"天");
}else{
System.out.println("这个不是闰年"+year+" "+month+"有"+28+"天");
}
break;
default:
System.out.println("输入有误");
}
}
}
输出一个四位数的翻转数:
package day02;
/*
求一个四位数的翻转数:
1.先将四位数每一个数取值取模
2.重新运算,然后相加。
1.用while循环,循环内用不断取模,然后将输入的值/10;
*/
import java.util.Scanner;
public class fanzhuanshhu {
public static void main(String[] args){
System.out.println("请输入整数");
Scanner scan=new Scanner(System.in);
int num=scan.nextInt();
while(num!=0){ //当num被/10等于0跳出循环
int a=num%10;
System.out.print(a);
num=num/10;
}
}
}