2018年3月19日Java
JAVA基础语法
1.一个Java程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作。
对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。类:类是一个模板,它描述一类对象的行为和状态。
方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。
实例变量:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。
2.第一个小练习
public class HelloWorld { /* 第一个Java程序 * 它将打印字符串 Hello World */ public static void main(String []args) { System.out.println("Hello World"); // 打印 Hello World } }
1.打开Notepad,把上面的代码添加进去;
2.把文件名保存为:HelloWorld.java;
3.打开cmd命令窗口,进入目标文件所在的位置,假设是C:\
4.在命令行窗口键入 javac HelloWorld.java 按下enter键编译代码。如果代码没有错误,cmd命令提示符会进入下一行。(假设环境变量都设置好了)。
5.再键入java HelloWorld 按下Enter键就可以运行程序了
你将会在窗口看到 Hello World
C : > javac HelloWorld.java
C : > java HelloWorld
Hello World
3.编写Java程序时,应注意以下几点:
大小写敏感:Java是大小写敏感的,这就意味着标识符Hello与hello是不同的。
类名:对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母应该大写,例如 MyFirstJavaClass 。
方法名:所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写。
源文件名:源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保存(切记Java是大小写敏感的),文件名的后缀为.java。(如果文件名和类名不相同则会导致编译错误)。
主方法:所有的Java 程序由public static void main(String []args)方法开始执行。
4.Java中的关键字
abstract |
assert |
boolean |
break |
byte |
case |
catch |
char |
class |
continue |
const |
default |
do |
double |
else |
extends |
enum |
final |
finally |
float |
for |
goto |
if |
implements |
import |
instanceof |
int |
interface |
long |
native |
new |
package |
private |
protected |
public |
return |
short |
static |
synchronized |
super |
strictfp |
this |
throw |
throws |
transient |
try |
void |
volatile |
while |
数据类型在程序语言的构成要素里占有相当重要的地位。Java的数据类型可分为基本数据类型与引用数据类型两种,其中基本数据类型包括了最基本的
byte、short、int、long、float、double、char字符、boolean等。
Java基本数据类型的大小、范围和默认值
NO. |
数据类型 |
大小/位 |
可表示范围 |
默认值 |
1 |
byte(字节) |
8 |
-128~127 |
0 |
2 |
short(短整型) |
16 |
-32768~32767 |
0 |
3 |
int(整型) |
32 |
-2147483648~2147483647 |
0 |
4 |
long(长整型) |
64 |
-9223372036854775808~9223372036854775807 |
0 |
5 |
float(单精度) |
32 |
-3.4E38~3.4E38 |
0.0 |
6 |
double(双精度) |
64 |
-1.7E308~1.7E308 |
0.0 |
7 |
char(字符) |
16 |
0~255 |
‘\u0000’ |
8 |
boolean(布尔) |
- |
true 或 false |
false |
5.数据类型的转换
数据类型转换
在Java中,各个基本数据类型的转型操作流程为:
范围小和范围大的两种数据操作,范围小的数据类型自动变为范围大的数据类型,如int+long=long;
如果现在把表示范围大的数据变成表示范围小的数据,则必须强制转换,如int型=(int)long型。
数据类型转换
public class Demo { public static void main(String[] args) { int x=10; //int型变量 long y=12; //long型变量 lng result1=x+y; //自动转换 int result2=(int)result1; //强制转换 System.out.println(result2); } }
自动转型(由小到大):byte->short->int->long->float->double;
强制转型(由大到小):double->float->long->int->short->byte。
6.运算符
public class Demo { public static void main(String[] args) { String str="淄博"; str=str+"甲骨文"; str+="你好"; System.out.println(str); } } +=运算符:先加后赋值
使用char类型定义的转义字符
No. |
转义字符 |
描述 |
No. |
转义字符 |
描述 |
1 |
\f |
换页 |
2 |
\\ |
反斜杠 |
3 |
\b |
倒退一格 |
4 |
\’ |
单引号 |
5 |
\r |
归位 |
6 |
\” |
双引号 |
7 |
\t |
制表符Tab |
8 |
\n |
换行 |
使用转义字符
public class Demo { public static void main(String[] args) { String str="淄博\"高新区\"甲骨文\t祝您成功!\nOCJP证书轻松拿。"; System.out.println(str); } }
运行效果:
淄博"高新区"甲骨文 祝您成功!
OCJP证书轻松拿。
三目运算符:
Demo.java 比较两个数的大小
public class Demo { public static void main(String[] args) { int a=4,b=7; //定义两个整型变量 int max=a>b? a:b; //三目运算符求最大数 System.out.println(max); } }
7.程序结构(分支、循环)
练习:用户输入1(剪子)或2(包袱)或3(锤)让系统生成随机数,每次用户输入一个数,告诉他你赢了还是输了还是平了
//用户输入1(剪子)或2(包袱)或3(锤)让系统生成随机数,每次用户输入一个数,告诉他你赢了还是输了还是平了 public static void main(String[] args){ int a=(int)(Math.random()*3+1); Scanner sc=new Scanner(System.in); String b=sc.next(); int c = Integer.parseInt(b); if(a==1){ if(c==1){System.out.print("平局");} else if(c==2){System.out.print("你输了");} else if(c==3){System.out.print("你赢了");} } else if(a==2){ if(c==1){System.out.print("你赢了");} else if(c==2){System.out.print("平局");} else if(c==3){System.out.print("你输了");} } else if(a==3){ if(c==1){System.out.print("你赢了");} else if(c==2){System.out.print("你输了了");} else if(c==3){System.out.print("平局");} } else{ System.out.print("请重新输入"); } } }