一、eclipse软件的快捷操作和快捷键
1.最大化代码视图
双击上方.java标题处可以最大化,再次双击缩小(如图中红框处)
2.自动生成主函数
输入main然后按alt加?键,点回车自动补全public static void main(String[] args) {}
3.快捷输入System.out.println();
输入syso然后按Alt加/键,点回车自动补全System.out.println()
4.向上、向下复制粘贴本行
按ctrl加alt加向下箭头等于向下复制本行
按ctrl加alt加向上箭头等于向上复制本行
5.快速删除整行
按ctrl加D键
6.智能导包
按ctrl加shift加O键
二、Java基础语法
1.Java的内存机制
如下图,其中栈内存可以比喻成电脑的RAM(运行内存),小而快;
堆内存可以比喻成电脑的ROM(硬盘),大而慢;
//变量在栈内存;final常量在数据区。
2.Java的一些语句
(1)控制台的输出语句
//控制台的输出语句
System.out.println("Hello World");
System.out.println('h');
System.out.println(name+age+"岁是性别"+sex);
System.out.print();
其中括号内写输出的内容;
括号内单引号只能用于一个字符,双引号可以用于单个字符多个字符;
括号内不加单引号和双引号的是常量或变量,用+来拼接;
print后面带ln表示加换行,不带ln表示不加换行,在后面显示换行。
(2)换行符(转移字符)
//换行符也叫转移字符
System.out.println("\r代表回车\n叫换行符也叫转移字符");
System.out.println("\r\n");//换两行
\r代表回车,换一行;
\n叫换行符也叫转移字符,换一行;
连一起会换两行。
(3)变量和常量
//变量
int age = 18; //整型变量
double price = 20.12; //浮点型变量
boolean is_vip = false; //布尔型变量
char sex = '女'; //字符型变量
String name= "张三"; //字符串型变量
//常量
final int AGE = 18; //整型常量
final double PRICE = 20.12; //浮点型常量
final boolean IS_VIP = false; //布尔型常量
final char SEX = '男'; //字符型常量
final String USER_NAME = "李雷"; //字符串型常量
区别:
1.写法:final的意思是最终的、不变的,指常量。在前面加上final就是常量,不加就是变量。
2.命名规范:
变量名:多个单词组成时,除第一个单词外,其他单词的首字母大写,驼峰式
例如:aaaBbbCcc
常量名:所有字母都大写,单词之间用下划线连接
例如:AAA_BBB_CCC
3.变量可以重新赋值,常量重新赋值会报错。
(4)注释
//单行注释
/*多行注释*/
/**文档注释*/
/**文档注释的格式
* 第一行或几行是关于类、变量和方法的主要描述。
* 之后是一个或多个各种各样的@标签
* 每一个@标签必须在一个新行的开始或者在一行的开始紧跟星号(*)
* 其中常用的标签如下:
* 格式:标签 描述 示例
* @author 标识一个类的作者 @author description
* @version 指定类的版本 @version info
* @param 说明一个方法的参数 @param parameter-name explanation
* @return 说明返回值类型 @return explanation
*/
(5)基本数据类型转换
分类:自动转换和强制转换
自动转换:
整型、浮点型和字符型的数据在混合运算中可以相互转换,这种转换是自动的,类型转换时遵循以下原则:
容量小的类型自动转换为容量大的类型,当使用byte、short、char进行计算时,会自动转换成int类型(byte、short、char) -> int -> long -> float -> double
强制转换:
容量大的类型转换为容量小的类型时,需要加上强制转换符,但是会造成数据的精度降低,有多种类型数据的混合运算时,系统会自动将所有参与运算的类型都转换成容量最大的类型,然后再进行运算
(6)标识符
在Java程序中程序员自定义的名称被称为标识符。
定义:在Java程序中程序员自定义的名称被称为标识符
特征:由26个英文字母、0-9的数字、_和$符号组成;不可以由数字开头;不可以使用关键字命名标识符
命名规范:
*包名:多个单词组成时,所有字母都小写 例如:aaabbbccc
*类名、接口名:多个单词组成时,所有单词的首字母大写 例如:AaaBbbCcc
*变量名、函数名:多个单词组成时,除第一个单词外,其他单词的首字母大写,驼峰式 例如:aaaBbbCcc
*常量:所有字母都大写,单词之间用下划线连接 例如:AAA_BBB_CCC
(7)如何接受用户键盘输入的整数值
声明一个int类型的变量,用于接受用户键盘输入的整数值:
System.out.println("请输入一个整数值:");
int a = new Scanner(System.in).nextInt();
鼠标悬浮在错误位置,点错误自动导入Scanner对象import java.util.Scanner;
(8)++a和a++的区别
//示例:++在后
int a = 0;
int aa = ++a; //先让变量i的值+1,然后将+1后的值赋值给变量b
System.out.println(aa); //运行结果是1
//示例:++在后
int b = 0;
int bb = b++; //先将变量i的值赋值给变量b,然后i的值+1
System.out.println(bb); //运行结果是0
(9)%取模
System.out.println(10%3); //相除取余数1
System.out.println(10%-3); //正负看被模数1
System.out.println(-10%3); //正负看被模数-1
(10)d+=1和d=d+1一样
d+=1;//d=d+1
(11)三元运算符
//格式:
(条件表达式) ? 表达式1 : 表达式2;
//如果条件为true,运算后的结果是表达式1
//如果条件为false,运算后的结果是表达式2
例题:
/*键盘接收用户输入的正整数值,程序判断,
* 如果用户输入的值是偶数,则控制台输出“您输入的值是一个偶数”;
* 否则控制台输出“您输入的值是一个奇数”
*/
System.out.println("请输入一个整数");
int num=new Scanner(System.in).nextInt();
String result = num%2==0?"偶数":"奇数";
System.out.println(result);
拓展:
boolean ee= "am" instanceof String;//检查是否类的对象
System.out.println(ee);
(12)逻辑运算符
是用来比较两个表达式的
boolean a= 4>3;
boolean b= 4>6;
System.out.println(a&b);//按位与,无论第一个条件是否符合要求,第二个条件都会去执行
System.out.println(a&&b);//短路与,指如果第一个为假,则不用看第二个
System.out.println(a|b);//按位或
System.out.println(a||b);//短路或
System.out.println(a^b);//两个条件相同即为false,两个条件相异即为true。
(13)快速将int转换成字符串类型
System.out.println(1+"");
+可以将非字符串数据相加,还可以有字符串拼接的作用,两侧的操作数中只要有一个是字符串类型,系统会自动将另一个操作数转换为字符串然后再进行连接,所以可以用来快速将int转换成字符串类型
(14)运算符的优先级
从高到低的顺序进行,先乘除,后加减;有括号先算括号。
算术运算符优先级较高,关系和逻辑运算符优先级较低。
多数运算符具有左结合性,单目运算符、三目运算符、赋值运算符具有右结合性。
(15)代码小技巧
//先定义变量,加注释
double jiBenGongZi=0;//初始工资
double wuZiJingTie=0;//物价津贴
double fangZuJingTie=0;//房屋津贴
double shiLingGongZi=0;//总薪水
//开始操作,重新赋值
System.out.println("请输入基本工资:");
jiBenGongZi=new Scanner(System.in).nextInt();
wuZiJingTie=jiBenGongZi*40/100;
fangZuJingTie=jiBenGongZi*25/100;
shiLingGongZi=jiBenGongZi+wuZiJingTie+fangZuJingTie;
//最后输出
System.out.println("初始工资为:"+jiBenGongZi);
System.out.println("物价津贴为:"+wuZiJingTie);
System.out.println("房屋津贴为:"+fangZuJingTie);
System.out.println("总薪水为:"+shiLingGongZi);
可以先找出题干中的变量,然后开始操作。