(二)Java编程基础

目录

一、关键字与保留字

二、标识符与变量

三、基本数据类型的转换

四、运算符

五、分支语句

五、循环语句

六、跳转语句

七、Java从键盘读取输入


一、关键字与保留字

定义:①关键字:Java关键字是电脑语言里事先定义的,有特别意义的标识符(字符串) 。

           ②保留字:现版本jdk中未被定义为关键字,将来版本中可能会使用的标识符(字符串)。

二、标识符与变量

1、定义:

①变量:能储存计算结果或能表示值的抽象概念,可对其进行定义、赋值等操作。

②标识符:对各种变量、方法和类等命名时使用的字符序列称为标识符。

2、标识符命名规则:(建议使用驼峰命名法

①开头:英文字母、'_' 、'$',且不可数字开头更不可全部使用数字。

②不可使用关键字、保留字,但可包含。

③Java中严格区分大小写,且不可包含空格。

注意:常量名建议全部大写,文件名与类名相同且首字母必须大写,若由多个单词组成则第二个单词首字母大写。

3、变量分类(按照数据类型)

①基本数据类型:

②引用数据类型:

注意:

①String(字符串)不属于基本数据类型。

②除了基本数据类型的8种,均属于引用数据类型。

三、基本数据类型的转换

1、自动转换

注意:

①只可按照上图从前向后自动转换(char->int、char->float等),不可逆向。

②char型转换为int型时,按照ASCII码大小。

2、强制转换

案例1:将int类型的num转换成char类型。

package day11;

public class Test {
	public static void main(String[] args) {
		int num=97;
		char ch=(char)num;
		System.out.println(ch);
	}
}

运行结果:

案例2:汉字编码(补充)

public class Test {
	public static void main(String[] args) {
		char ch1='赵';
		int num=(int)ch1;
		System.out.println(num+"
"+"赵后面的是个汉字分别是:");
		for(int i=1;i<=10;i++) {
			System.out.print((char)(num+i)+" ");
		}
	}
}

运行结果:

注意:案例2意味每个汉字都有其编码序号。

案例3:当字符串前后包含'+'时(补充)

package day11;

public class Test {
	public static void main(String[] args) {
		String str=1+2+"hello"+4+5;
		System.out.println(str);
	}
}

运行结果:

注意:当字符串前、后包含'+'时,前面做正常运算,后面做拼接。

四、运算符

1、算数运算符:+、-、*、/、%、++、-- ...(用法c相同)

2、赋值运算符

案例:比较num1=num1+1和num1+=1

结论:前者不能自动强制转换,后者可以

3、比较运算符:==、!=、<、<=、instanceof(检查是否是类的对象)

案例:instanceof 用法

“Hello” instanceof String 返回值:true

4、逻辑运算符:&、|、!、&&、||、^

注意:

①&与&&区别(|与||同理):当左边为true时前者继续比较右边但后者不在比较

②亦或:两边同号为false,异号为true

5、位运算符:<<、>>、>>>(无符号右移)、&、|、^、~(求反码)

注意:

①3<<4=48 等价于 3*2^4

②反码、补码原理要清楚(0正1负)、正数原码按位取反末位加1=负数

6、三目运算符

public class Test {
    public static void main(String[] args) {
        int n=1,m=2;
        System.out.println(n<m?n:m);
    }
}

注意:三目运算符可嵌套。

五、分支语句

1、if语句

2、switch语句

public class Test {
	public static void main(String[] args) {
		int num=1;
		switch (num) {
		case 1:
			执行语句1;
			break;
		default:
			执行语句2;
			break;
		}
	}
}

注意:两者区别不大,个人喜欢用if,但switch效率要高。

五、循环语句

1、for循环

案例:从0打印到9

package day11;

public class Test {
	public static void main(String[] args) {
		for(int i=0;i<10;i++) {
			System.out.print(i+" ");
		}
	}
}

运行结果:

 

2、while循环

案例:从0打印到9

package day11;

public class Test {
	public static void main(String[] args) {
		int num=0;
		while(num!=10) {
			System.out.print(num+" ");
			num++;
		}
	}
}

运行结果:

3、do...while(终止条件)

案例:做课程设计时用到了do...while(终止条件),感觉交互性很好。

部分代码:

void inserts(linklist L)
{
    char c1='y';
    do {
        system("cls");
        traverse(L);
        cout<<"请分别输入选手的编号和姓名"<<endl;
        infor stu;
        stu.num=0,stu.rank=-1;
        cin>>stu.id>>stu.name;
        if(judge(L,stu.id)){
            cout<<"数据有误!"<<endl;
            continue;
        }
        insert(L,stu);
        cout<<"是否继续添加选手信息(y/n)?"<<endl;
		cin>>c1;
		if(c1=='y'){

		}else if(c1!='n'){
			cout<<"输入有误,请重新输入!"<<endl;
		}
    }while(c1!='n');
}

运行结果:直到输入'n'时才退出系统

六、跳转语句

1、break:跳出循环

2、continue:结束本次循环,开始下次循环

3、return:结束程序

七、Java从键盘读取输入

1、单组输入:

package day11;

import java.util.Scanner; //导类

public class Test {
	public static void main(String[] args) {
		Scanner cin=new Scanner(System.in); //使用Scanner定义cin
		
		String str=cin.nextLine();//读取字符串
		
		String str1=cin.nextLine();//读取字符:先读取字符串,再使用charAt转换
		char ch=str1.charAt(0);
		
		int num=cin.nextInt();//读取整数
		
		System.out.println("str:"+str);//输出数据
		System.out.println("ch:"+ch);
		System.out.println("num:"+num);
	}
}

2、读取到文件结束(多组输入):

package day11;

import java.util.Scanner; //导类

public class Test {
	public static void main(String[] args) {
		Scanner cin=new Scanner(System.in); //使用Scanner定义cin
		while(cin.hasNextLine()) {
			int num=cin.nextInt();
			System.out.println(num);
		}
	}
}

3、固定组输入:

package day11;

import java.util.Scanner; //导类

public class Test {
	public static void main(String[] args) {
		Scanner cin=new Scanner(System.in); //使用Scanner定义cin
		int n=cin.nextInt();
		while(n-->0) {
			int num=cin.nextInt();
			System.out.println(num);
		}
	}
}

不足之处请留言!

原文地址:https://www.cnblogs.com/ldu-xingjiahui/p/12594034.html