笔者是在C语言基础上学习java
安装Java的过程中我们可能会见到这样几个东西,JVM、JRE、JDK,那它们的关系是怎样的呢?
-JVM
Java Virtual Machine 是Java虚拟机,Java程序需要运行在虚拟机上,不同的平台有自己的虚拟机,因此Java语言可以实现跨平台。
-JRE
Java Runtime Environment 包括Java虚拟机和Java程序所需的核心类库等。核心类库主要是java.lang包:包含了运行Java程序必不可少的系统类,如基本数据类型、基本数学函数、
字符串处理、线程、异常处理类等,系统缺省加载这个包
如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
-JDK
Java Development Kit 是提供给Java开发人员使用的,其中包含了Java的开发工具,也包括了JRE.所以安装了JDK,就无需再单独安装JRE了。其中的开发工具:编译工具(javac.exe),打包工具(jar.exe)等。
Hello World!
文件名与类名应一致
HelloWorld.java
public class HelloWorld{
public static void main(String[] args){//main方法
System.out.println("Hello World!");//输出
}
}
Java的输入
Java中输入一般是通过Scanner类来实现的,使用该方法前要先调用Scanner包
import java.util.Scanner;
要通过创建输入的对象才能使用输入方法
创建input输入对象:
Scanner input = new Scanner(System.in);
创建对象后可以使用输入的方法,对应不同的数据类型应使用不同的输入方法
//String类型
String str = input.next();//或String str = input.nextLine();
//int类型
int sum = input.nextInt();
//float类型
float tem = input.nextFloat();
//double类型
double d = input.nextDouble();
input.next()和input.nextLine()的区别
- input.next()的含义为接收到" "空白字符前的一个字符;即获取下一个字符串,输入间隔为空格或回车时阶段
- input.nextLine()的含义为接收到"\n"换行字符前的一个字符;即获取一行数据
next()
- 一定要读取到有效字符后才可以结束输入
- 对输入有效字符之前遇到的空白,next()方法会自动将其去掉
- 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符
- next()不能得到带有空格的字符串
nextLine()
以Enter为结束符,也就是说nextLine()方法返回输入回车前的所有字符可以获得空白
在我们使用过程中可以多使用nextLine(),如果我们在nextLine()前使用了其他的输入,默认会将上一单位的输入自动输入至nextLine()中,所以如果我们全局都采用nextLine()就会减少这类冲突。
使用String类来接收数据的好处
在String类中我们可以输入各种类型的数据而不会产生错误,在具体的项目中,通过包装类的方法可以对数据进行转换,配合nextLine方法的使用可以更好的接收各种类型的数据。
使用hasNext与hasNextLine判断是否还有输入的数据
if(input.hasNext())//hasNextLine()
System.out.println("输出:"+input.next());//nextLine()
input.close();
while循环输入如何退出
//标志位退出
while(!input.hasNext("0")){
//代码段
}
//内部标志退出
while(input.hasNextLine()){
//代码段
if(input.hasNext("0"))
break;
}
//系统退出
while(input.hasNextLine()){
//代码段
System.exit(0);
}