目录

一、关键字与保留字

二、标识符与变量

三、基本数据类型的转换

四、运算符

五、分支语句

五、循环语句

六、跳转语句

七、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+"\n"+"赵后面的是个汉字分别是:");
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);
}
}
}

不足之处请留言!

最新文章

  1. HTTP 302 404 500 状态消息
  2. Qt 制作安装包
  3. 使用k-近邻算法改进约会网站的配对效果
  4. Eclipse超级完美汉化教程
  5. 开启mysql慢查询日志并使用mysqldumpslow命令查看
  6. PHP Libxml
  7. 什么样的企业造什么样的软件最easy成功?
  8. 在jsp中用一数组存储了数据库表中某一字段的值,然后在页面中输出其中的值。
  9. ELK学习总结(2-2)单模式CRUD操作
  10. Vue Document
  11. 开发工程中遇到的BUG
  12. bzoj 2186
  13. 搭建mysql cluster
  14. python常用模块之时间模块
  15. LINUX系统一一CentOS6.5之tomcat安装
  16. SQL - 查询某一字段值相同而另一字段值最大的记录
  17. 理解活在IPHONE中的那些APP (五)
  18. 回文自动机 + DFS --- The 2014 ACM-ICPC Asia Xi’an Regional Contest Problem G.The Problem to Slow Down You
  19. [BinaryTree] 最大堆的类实现
  20. 如何修改MAC自带的PHP的版本?

热门文章

  1. jsp 循环数字
  2. Golang源码学习:使用gdb调试探究Golang函数调用栈结构
  3. Closures Basic
  4. 基于postman测试接口(整套接口测试)
  5. excel2007灵活计算2个日期之间的工作日
  6. 二、【Python】机器学习-监督学习
  7. tomcat session漏洞反序列化详解
  8. Chisel3 - Tutorial - Functionality
  9. pycharm关联git
  10. 【Hadoop】hdfs,剖析文件上传