DOS常用命令:
1.dir
无参数:查看当前所在目录的文件和文件夹
/s:查看当目录以及子目录所有的文件
/a:查看包括隐藏文件
/ah:只显示隐藏文件
/w:以紧凑的方式显示文件
/p:以分页方式显示
/more:dir /s | more
2.cd
cd目录名:进入特定的目录。
cd\:退回到根目录
cd..:退回上级目录
3.md rd
md:创建目录
rd:删除目录
4.cls
清屏
5.copy
copy 路径/文件名路径/文件名:把一个文件拷贝
6.move
move路径/文件名/ 路径/文件名:把文件移动到另一个地方
注意:是剪切+复制
7.del
del文件名:删除一个文件
del *.*:删除当前文件夹下所有文件
注意:del不能删除文件夹
8.deltree
删除文件夹及内容
9.type
type文本文件名:显示出文本文件的内容
10.ren
ren旧文件名 新文件名:改文件名
JAVA:
JDK:开发工具包(包含JRE)
JRE:JAVA运行环境
src:JAVA源码
bin:二进制可执行文件
环境变量的配置:
path:路径需要导入环境变量(用户变量+系统变量),建议百度一下,
程序开发步骤:
程序:为实现特定的目标而用计算机语言编写的命令的集合。
1.编写文件.java文件 2.编译程序.class文件 3.运行程序JVM
helloworld编写:
public class HelloWorld{
public static void mian(String[] args){ //字符串数组的名字
System.out.println("hello world!")
}
}
》》javac helloworld.java---》生成.class文件
》》java helloworld
》》javadoc *.java-----》生成文档文件
JAVA跨平台原理:
.class字节码文件可以跨平台,通过不同平台的JRE编译.class文件
JVM屏蔽了底层运行平台的差异,实现了“一处编译,处处运行”
JAVA基础:
变量:系统为程序分配的一块内存单元,用来存储各种类型的数据。
局部变量:方法内部定义的变量
成员变量:方法外部,类的内部定义的变量
JAVA标识符命名规则:
由字母,数字,下划线和$符号组成
不能以数字开头
区分大小写
长度无限制
不能和java中保留关键字重复
八种基本数据类型:
进制与转换:
基本数据类型转换:
自动类型转换:容量小的类型自动转换成容量大的数据类型。如果把int转换为float或long转换为double时不需要强转,但可能会丢失精度。
注意:byte,short,int在计算时会转换成int类型
short s = 10;
short c = 1;
s = s + c; //出错:s和c会被转换成int,从int转换成short可能会用损失。/****解决:用+=不会转换*****/
强制类型转换:把大的容量类型转换为小的数据类型时,要加上强制类型转换。
eg:s = (short)(s+c);
注意:有可能造成精度降低或数据溢出。boolean类型不能转换成任何其他的数据类型。
关键字与转义字符:
关键字:建议百度一下
保留关键字:goto,const...
转义字符:如\n,\t,\r,\\,\',\"...
eg:println中的ln是换行
算术赋值关系运算符:
算术运算符:建议百度
表达式:由变量,常量运算符组成的式子
赋值运算符:=,+=,-=,/=...将一个值赋给一个变量,运算顺序从右到左
关系运算符:比较两边的操作数,结果是boolean类型的。
//键盘输入工具类:
import java.util.scanner;
Scanner input = new Scanner(System.in);
int x = input.nextInt(); //从键盘接收一个整数
string s = input.next(); //从键盘接收一个字符串
逻辑运算符:^(异或)用于对boolean结果进行运算
逻辑运算符与示例:
1.根据天数计算周数和剩余的天数,天数通过键盘输入。
import java.util.Scanner;
public class Test{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.printIn("please input days:");
int day = input.nextInt();
System.out.println("weeks:"+(day/7));
System.out.println("left days:"+(day%7));
}
}
2.&和&&的区别?
&:在算术运算时分别计算表达式两边的结果,再作&运算,在做位运算时&表示安位与
&&:短路与运算,先计算左边的表达式,如果结果是false,那么不用计算右边的表达式,直接返回false。
位运算符与变量交换:
位运算符:对两个操作数中的一个二进制位都进行运算
~:按位去反
^:按位异或
左移:a<<b;将二进制形式a逐位左移b位,最低位补0
带符号右移:a>>b;将二进制形式的a逐位右移b位,最高位补原符号位
无符号右移:a>>>b;将二进制形式的a逐位右移b位,最高位补0
1.通过键盘输入,初始化两个数将这两个数据交换位置后,输出显示交换后的数据。
Scanner input = new Scanner(System.in);
System.out.println("please input first num:");
int a = input.nextInt();
System.out.println("please input second num:");
int b = input.nextInt();
//通过第三变量交换
int c = a;
a = b;
b = c;
//交换位置,大数会溢出
a = a+b-(b=a);
//加减
a=a+b;
b=a-b;
a=a-b;
//两个数最快交换位置:异或
a = a^b;
b = a^b;
a = a^b;
System.out.println("a="+a+",b="+b);
三目运算符与优先级:
(判断条件)?条件成立项:条件不成立项;
if分支语句:
百度一下。
1.输入一个字符,判断是大写字母还是小写字母,输出提示信息。
import java.util.Scanner;
public class Test{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.println("please input a word:");
int c = input.nextInt(); //这里应该输入字符串
if(c>=65 && c<=90){
System.out.println("Big w!"+(char)c);
}else{
System.out.println("Small w!"+(char)c);
}
}
}
2.判断某一年是否是闰年?
import java.util.Scanner;
public class Test{
public ststic void main(String[] args){
System.out.println("plese input year:");
int year = input.nextInt();
if((year%4==0 && year% 100!=0)||year%400==0){
System.out.println("is leap year.");
}else{
System.out.println("is not!");
}
}
}
1.输出成绩等级‘A’‘B’‘C’..
public class Test{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.println("please input a score:");
int score = input.nextInt();
if(score >= 90){
System.out.println("A");
}else if(score<90 && score>=80){
System.out.println("B");
}else if(score<80 && score>=70){
System.out.println("C");
}else if(score<70 && score>=60){
System.out.println("D");
}else{
System.out.println("E");
}
}
}
switch分支语句:
1.表达式返回值必须是int,byte,char,short确定的结果
2.case子句中的取值必须是常量,且所有case子句中的取值应是不同的
3.default子句是可选的
4.break语句用来在执行完一个case分支后使程序跳出switch语句块;如果case后面没有写break则直接往下面执行
5.case后面的执行体可写{}也可不写{}
*.直接用JDK1.7的字符串条件判断,确定两个数是执行+,-,*,/操作。
import java.util.Scanner;
public class Test{
public ststic void main(){
Scanner input = new Scanner(System.in);
System.out.println("num1:");
int num1 = input.nextInt();
System.out.println("num1:");
int num2 = input.nextInt();
System.out.println("please input op mark:");
String op = input.next();
switch(op){
case "+":
/*如果在子句中定义变量,会在最近的{}生效。*/
System.out.println("num1+num2="+(num1+num2));
break;
case "-":
System.out.println("num1-num2="+(num1-num2));
break;
case "*":
System.out.println("num1*num2="+(num1*num2));
break;
case "/":
System.out.println("num1/num2="+(num1/num2));
break;
default:
System.out.println("error op mark!");
break;
}
}
}
分支语句比较和经验总结:
if & switch异同:
同:都是选择分支语句
异:1.语法不通 2.语句后表达式值得类型不同,if语句为boolean,switch分支表达式值为byte,short,char,int,枚举,String。
3.使用场景:if变量在区间,switch变量确定
if & 三目运算
三目运算符都可以使用if语句实现。
总结:
*在实现分支判断时,把匹配成功概率高的判断放在前面,可以提高效率
*在表达式中判断,我们尽量使用确定的值去跟不确定的值去判断。
while与dowhile循环:
1.while(条件判断){
//语句块;
} //特点:先判断,再执行
练习:计算1-100之间数的和。
import java.util.Scanner
public class Test{
public static void main(String[] args){
int num = 1; //计算总数
int i = 1;
while(i <=100){
num+=i;
i++;
}
System.out.println(num);
}
}
2.do{
循环操作;
}while(循环条件); //特点:先执行一遍循环操作,符合条件,再继续
练习:java阶乘求和 1!+2!+3!+。。。+10!。
public static void main(String[] args){
int num = 0;
int i = 1;
do{
int j = 1;
int jc = 1;
while(j<=i){
jc *= j;
j++;
}
num+=jc;
i++;
}while(j<=10){
System.out.println(num);
}
}
For循环:
for(初始化参数;判断条件;更新循环变量){
循环体;
}
注:表达式1省略须在外部声明,表达式2省略死循环,表达式3省略声明在内部,表达式1.3省略,须声明在循环外部和内部,表达式都省略,死循环。
*输出斐波那契数列:
public static void main(String[] args){
int n1 = 1
int n2 = 1;
int next = 0;
System.out.println(na+" "+n2+" ");
for(int i=0;i<8;i++){
next = n1+n2;
System.out.print(next+" ");
n1 = n2;
n2 = next;
}
}
多重循环示例小结:
1.打印如下:
*
**
***
****
*****
public static void main(String[] args){
//外循环控制行数
for(int i = 1;i<=5;i++){
//内循环控制列数
for(int j=1;j<i;j++){
System.out.print("*");
}
System.out.println();
}
}
2.打印乘法口诀表
public static void main(String[] args){
//外循环控制行数
for(int i=1;i<=9;i++){
//内循环控制列数
for(int j=1;j<=i;j++){
System.out.print(j+"*"+i+"="+(i*j)+"\t");
}
System.out.println();
}
}
3.打印如下
*
**
***
****
*****
public static void main(String[] args){
for(int i=1;i<=5;i++){
for(int j=5;j>0;j--){
if(j<=i){ //关键:由j和i的比较决定输出空格还是*
System.out.print("*");
}else{
System.out.print(" ");
}
}
System.out.println();
}
}
4.打印如下:
*
***
*****
*******
*********
public static void main(String[] args){
//外循环控制行数
for(int i=1;i<=5;i++){
//内循环控制列数
for(int j=1;j<5;j++){
System.out.print(" ");
}
//内循环输出*,*每次增加2个,
for(int j=1;j<=i*2-1;j++){
System.out.print("*");
}
System.out.prinyln();
}
}
常用DOS命令,java基础扫盲式学习和分支语句练习
最新推荐文章于 2024-03-20 10:32:26 发布