Scannernext()方法和nextLine()方法

1、next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符。next方法不能得到带空格的字符串。

2、nextLine()方法的结束符只是Enter键,即nextLine()方法返回的是Enter键之前的所有字符,它是可以得到带空格的字符串的。

3、Scanner.nextInt()是从(流,控制台)中读取一个整数到空格和回车结束,如果输入的不是数字会抛出异常。nextInt()在顺序读取流的时候会把回车留在流中。这样先用nextInt() 和nextLine()连用时,nextLine()会读到空字符串。

4、在实际工作中很少使用 Scanner在控制台编程!一般控制台只是用来调试软件的输出目标。

Java应用开发步骤

1、编写Java 源文件(文本文件)(记事本,Eclipse)

2、编译为.class 字节码文件

3、使用Java 虚拟机执行 .class字节码文件

c c++是直接翻译成机械码,java要先编译再解释。所以java比较慢,cc++比较快。java源文件是人能够看懂的程序脚本,经过变编译器编译为计算机能够处理的 2进制数据和指令,在进一步有计算机执行和处理!

计算机只能处理数据,任何软件的功能最终都要转换为数据计算!.metadata 是eclipse的配置信息保存目录。

Java的开发环境-JDK

JDK  java 开发工具包

|--bin 包含一些用于开发Java程序的工具,例如:编译工具  (javac.exe)、运行工具 (java.exe) 、打包工具 (jar.exe)等。

|-- lib 包含开发Java程序所使用的类库文件。 (tools.java)

|-- src.zip: API的源文件 System.java

|-- jre JRE Java运行环境

  |-- lib  Java运行时环境所使用的核心类库。(rt.java)

  |-- bin  (java_vm)JVM Java虚拟机

JDK  JRE  JVM三者的联系与区别 

JDK

Java Development ToolKit(Java开发工具包)。JDK是整个JAVA的核心,包括了Java运行环境,一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API包括rt.jar)。

JRE

Java Runtime  Enviromental(java运行时环境)。所有的Java程序都要在JRE下才能运行。包括JVM和JAVA核心类库和支持文件。与JDK相比,它不包含开发工具——编译器、调试器和其它工具。

JVM

Java Virtual Mechinal(JAVA虚拟机)。JVM是JRE的一部分,运行java字节码文件。JVM 对上层的Java 源文件是不关心的,它关注的只是由源文件生成的类文件(class file )。

J2SE  J2EE  J2ME

java2平台包括:标准版(J2SE)、企业版(J2EE)和微缩版(J2ME) 三个版本。

J2SE就是Java2的标准版,主要用于桌面应用软件的编程;Standard Edition(标准版) J2SE 包含那些构成Java语言核心的类。比如:数据库连接、接口定义、输入/输出、网络编程

J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站。Enterprise Edition(企业版) J2EE 包含J2SE 中的类,并且还包含用于开发企业级应用的类。比如:EJBservletJSPXML、事务控制。

J2ME主要应用于嵌入式系统开发,如手机和PDA 的编程;Micro Edition(微缩版) J2ME 包含J2SE中一部分类,用于消费类电子产品的软件开发。   比如:呼机、智能卡、手机、PDA机顶盒

简单讲就是

j2se java 2 simple edition 小型程序用

j2ee java 2 enterprise edition 大型程序用

j2me java 2 micro edition 手机上用

他们的范围是J2SE包含于J2EE中,J2ME包含了J2SE的核心类,但新添加了一些专有类。

环境变量

linux环境下

PATH 是Linux操作系统的环境变量

$PATH 是读取变量的值

echo $PATH  命令就是将$PATH 取回的变量值显示到屏幕,简单说就是看看PATH变量的值

PATH 变量的作用: 操作系统可执行命令的搜索路径,操作系统在执行命令时候,逐一搜索PATH指定的路径,找到命令执行如果找不到就报错误:command not found

export 导出命令,可以用来修改环境变量

export PATH=/bin 在终端窗口中的环境变量设置,只在当前窗口中生效。关闭就取消了

安装 JDK 以后要配置环境变量

1) 配置PATH,目的是将 Java 开发工具命令,扩展为系统命令PATH=/opt/jdk/bin:$PATH export PATH

2) JAVA_HOME,是Java的环境变量,作用是指示java应用软件找到 Java的安装目录 (/opt/jdk) JAVA_HOME=/opt/jdk exoprt JAVA_HOME

3) CLASSPATH,是Java的环境变量,作用是指示Java在 运行期间Java class文件的搜索位置CLASSPATH=.exoprt CLASSPATH

windows环境下

path

path环境变量是定义操作系统查找和运行的可执行文件的路径。在java中,假设我的java安装在C:\Program   Files\Java\jdk1.5.0_02下。那么,path环境变量的值应设为:C:\Program   Files\Java\jdk1.5.0_02\bin,即把bin目录下的java.exe,javac.exe等可执行文件设进path环境变量中.

classpath

classpath环境变量是定义java虚拟机查找和运行的源文件的路径。在java中就要把C:\Program   Files\Java\jdk1.5.0_02\lib下的java源文件(.class文件)的路径设进classpath中,即把lib目录下的.jar文件(将.class文件打包后的文件)的路径设进去,

例如:把classpath的值设为C:\Program   Files\Java\jdk1.5.0_02\lib\dt.jar,classpath可设多个,用 "; "分隔就行了.

java_home

指的就是java的安装目录即C:\Program Files\Java\jdk1.5.0_02;如果把java_home设为C:\Program Files\Java\jdk1.5.0_02,那么在path和classpath路径中可用%java_home%替换C:\Program Files\Java\jdk1.5.0_02。

变量

1)逻辑上类似于人类语言中的代词

2)本质上是内存中的数据

    Person she;

    Person he;

    she.love(he);

变量的语法规定

1) 变量必须有明确的类型

2) 变量必须声明,且初始化以后才能使用

3) 变量有作用域, 超过作用域就释放。变量的作用域:声明位置开始,到块结束。语句块:{}

4) 变量不能重复定义!

如果违反了语法规定 将发生编译错误! 编译错误:在代码编译期间发生的错误。如果有编错误,就不能生成.class 更不可能运行!

编译错误的处理:

1)查看编译错误消息!

2)根据提示修改代码,解决问题

Java基础(1)--JDK,变量的更多相关文章

  1. JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)

    Java基础语法(变量.常量.数据类型.运算符与数据类型转换) 1.变量 Java中.用户能够通过指定数据类型和标识符来声明变量.其基本的语法为: DataType identifier; 或 Dat ...

  2. Java基础语法(2)-变量

    title: Java基础语法(2)-变量 blog: CSDN data: Java学习路线及视频 1.什么是变量? 变量的概念 内存中的一个存储区域 该区域的数据可以在同一类型范围内不断变化 变量 ...

  3. Java基础语法01——变量与运算符

    本文是对Java基础语法的第一部分的学习,包括注释:标识符的命名规则与规范:变量的数据类型分类以及转换:以及六种运算符(算术.赋值.比较.逻辑.三元和位运算符).

  4. java基础知识--环境变量配置

    说到java,大家应该都了解:J2SE基础.J2ME嵌入式.J2EE延伸的内容,而我们平时接触和所谈大部分都是J2EE企业级应用开发. 作为开发者,使用java之前,必须安装java开发环境,配置ja ...

  5. 【java基础之jdk源码】Object

    最新在整体回归下java基础薄弱环节,以下为自己整理笔记,若有理解错误,请批评指正,谢谢. java.lang.Object为java所有类的基类,所以一般的类都可用重写或直接使用Object下方法, ...

  6. 【java基础之jdk源码】集合类

    最近在整理JAVA 基础知识,从jdk源码入手,今天就jdk中 java.util包下集合类进行理解 先看图 从类图结构可以了解 java.util包下的2个大类: 1.Collecton:可以理解为 ...

  7. java基础--配置环境变量的意义

    0.jre和jdk jre(java runtime environment) 运行java程序要用的Java运行环境 jdk:java开发人员要用的java开发环境,包括jre 1.JAVA_HOM ...

  8. Java基础教程(5)--变量

    一.变量 1.变量的定义   正如上一篇教程<Java基础教程(4)--面向对象概念>中介绍的那样,对象将它的状态存在域中.但是你可能仍然有一些疑问,例如:命名一个域的规则和惯例是什么?除 ...

  9. 01 java 基础:jdk jre path classpath 相关问题

    JRE : Java 运行环境 JDK :  Java 开发工具包,其中包括 JRE  (javac.java.javap.jar.javadoc .javah 等命令) JVM : Java 虚拟机 ...

随机推荐

  1. 如何转义CSV文件中的逗号

    CSV全称是:Comma Separated Values 或者 Character Separated Values. 尽管第一种说法更常见,但我觉得还是第二种说法更确切一些,因为你可以使用其它字符 ...

  2. 微软企业库验证 Validations

    using System; using System.Collections; using System.Collections.Generic; using System.Linq; using S ...

  3. flink hadoop yarn

    新一代大数据处理引擎 Apache Flink https://www.ibm.com/developerworks/cn/opensource/os-cn-apache-flink/ 新一代大数据处 ...

  4. MyISAM Key Buffer 读/写/利用率(%) MylSAM平均每秒Key Buffer利用率(%) MylSAM平均每秒Key Buffer读命中率(%) MylSAM平均每秒Key Buffer写命中率(%)

    MyISAM Key Buffer 读/写/利用率(%) MylSAM平均每秒Key Buffer利用率(%)MylSAM平均每秒Key Buffer读命中率(%)MylSAM平均每秒Key Buff ...

  5. 把配置和环境解耦 eliminate “works on my machine” problems when collaborating on code with co-workers docker架构与解决的问题

    Docker实践 - 懒人的技术笔记 - 博客频道 - CSDN.NET  http://blog.csdn.net/lincyang/article/details/43055061 Docker直 ...

  6. python基础之类的静态方法和类方法

    一 静态方法 通常情况下,在类中定义的所有函数都是对象的绑定方法,对象再调用绑定方法时会自动将自己作为参数传递给方法的第一个参数.除此之外还有两种常见的方法:静态方法和类方法,二者是为类量身定制的,但 ...

  7. 如何编译部署 UIKit 离线文档?

    如何编译部署 UIKit 离线文档? Whis is UIKit? Note:部署在 Windows 系统会出现路径错误情况,这里采用在 Debian 系统上进行编译和部署. 1. 安装一些前置工具 ...

  8. AwesomePerfCpp 性能优化

    Contents Talks Articles Sites/Blogs Tools Libraries Books About Talks 2013: Going Native 2013 - Andr ...

  9. 在容器最前面添加DOM元素 parent.insertBefore(new, parent.children[0])

    //判断容器当前有没有子级元素,如果没有直接appendChild就行了; if (p.children[0]) { p.insertBefore(span, p.children[0]); } el ...

  10. Numpy常用操作方法

    NumPy NumPy是高性能科学计算和数据分析的基础包.部分功能如下: ndarray, 具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组. 用于对整组数据进行快速运算的标准数学函数(无需编 ...