Java基础 - 第二天 Eclipse、运算符、Scanner类

第1章    Eclipse

1.1     Eclipse概述

l 概述

Eclipse是一个专门针对Java的集成开发工具(IDE),是IBM公司的产品。是免费、开源、由Java语言编写。所以,需要有JRE运行环境并配置好环境变量。它可以极大地提升我们的开发效率。可以自动编译,检查错误。在公司中,使用的就是Eclipse进行开发。

l 特点描述

n 免费

n 纯Java语言编写

n 免安装

n 扩展性强

l 下载和安装

n 下载 http://eclipse.org/

n 安装 绿色版 解压就可以使用(Eclipse)

n  卸载(只需要将文件夹删除就可以了)

n  注意: 开发软件的安装目录中,不要出现空格与中文与特殊符号

1.2     Eclipse基本使用

l 打开eclipse

l 选择工作空间

n 工作空间  其实就是我们写的源代码所在的目录

l 用Eclipse来完成一个HelloWorld案例

A:创建Java项目:

点击File或者在最左侧空白处,选择Java项目,在界面中写一个项目名称,然后Finish即可。

B:创建包:展开项目,在源包src下建立一个包com.jdguigu

C:创建类:在com.ithiema包下建立一个类HelloWorld

在界面中写一个类名:HelloWorld,然后finish即可。

D:编写代码

在HelloWorld类写main方法,在main方法中写一条输出语句:我是京东硅谷程序员,我骄傲,我自豪。

E:编译

自动编译,在保存的那一刻帮你做好了

F:运行

选择要运行的文件或者在要运行的文件内容中

右键 -- Run as - Java Application即可

1.3     基本配置

l 行号的显示和隐藏

n 显示:在代码区域的左边空白区域,右键 -- Show Line Numbers

n 隐藏:将上面的操作再做一遍

l 字体大小及颜色

n  修改java代码的字体大小与颜色

u  Window -- Preferences -- General -- Appearance -- Colors and Fonts-- Java -- Java Editor Text Font选中后,点击Edit,进行修改

n  修改其他字体大小与颜色

u  Window -- Preferences -- General -- Appearance -- Colors and Fonts-- Bacic -- Text Font 选中后 点击Edit ,进行修改

l 解决窗体布局乱了

n  Window – Perspective -- Reset Prespective

l 解决控制台找不到

n  Window--Show View—Console

1.4     快捷键

l 内容辅助键:alt+/

A:main方法

main,然后alt+/,回车

B:输出语句

sysout,回车

l 其它快捷键:

A:注释

单行注释: 选中内容,ctrl+/,再来一次就是取消

多行注释: 选择内容,ctrl+shift+/,ctrl+shift+\

B:格式化

ctrl+shift+f

1.5     项目的删除和导入

l 删除项目

n 选中项目– 右键 – 删除

n 从项目区域中删除

n 从硬盘上删除

l 导入项目

n 在项目区域右键找到import

n 找到General,展开,并找到

u Existing Projects intoWorkspace

n 点击next,然后选择你要导入的项目

u 注意:这里选择的是项目名称

第2章     变量

2.1     类型转换

+是一个运算符, 我们应该能够看懂,做数据的加法。

boolean类型不能转换为其他的数据类型

l 默认转换: 范围小的数据类型直接转换成范围大的数据类型

n 转换规则byte,short,char—int—long—float—double

n 注意事项byte,short,char相互之间不转换,他们参与运算首先转换为int类型

n 格式: 范围大的数据类型变量 = 范围小的数据类型值;

n 图解:

publicclass Demo09TypeCast {

publicstaticvoidmain(String[] args) {

//直接输出了运算的结果

System.out.println(3+ 4);

//定义两个int类型的变量

inta = 3;

intb = 4;

intc = a + b;

System.out.println(c);

//定义一个byte类型,定义一个int类型

bytebb = 2;

intcc = 5;

System.out.println(bb + cc);

//我能不能不直接输出,用一个变量接收呢?

//用变量接收,这个变量应该有类型

//byte dd= bb + cc;//可能损失精度

//byte,short,char类型在参与运算的时候会把自己提升为int类型

intdd = bb + cc;

System.out.println(dd);

}

}

l 强制转换: 表示范围大的数据类型强制转换成范围小的数据类型

n 范围小的数据类型  变量 = (范围小的数据类型) 范围大的数据类型值;

n 不建议,有可能损失精度

n 代码演示

publicclass Demo10TypeCast {

publicstaticvoidmain(String[] args) {

inta = 3;

byteb = 4;

intc = a + b;

//byte d = a+ b;//可能损失精度

byted = (byte)(a + b);

}

}

第3章     运算符

3.1     概述

l 运算符概述

n 对常量和变量进行操作的符号称为运算符

l 表达式概述

n 用运算符把常量或者变量连接起来符合java语法的式子就可以称为表达式。不同运算符连接的式子体现的是不同类型的表达式。

n 定义两个int类型的变量a,b,做加法(a + b)

l 常用运算符

n 算术运算符

n 赋值运算符

n 关系运算符

n 逻辑运算符

n 三元运算符

3.2     算术运算符

l +、-、*、/的基本用法

publicclass Demo01Operator {

publicstaticvoidmain(String[] args) {

// 定义两个变量

inta = 3;

intb = 4;

System.out.println(a + b);

System.out.println(a - b);

System.out.println(a * b);

System.out.println(a / b);

// 整数相除只能得到整数,想要得到小数,就必须有浮点数参与运算

System.out.println(3/ 4.0);

System.out.println(3.0/ 4);

}

}

l %的用法

n 得到的是两个相除数据的余数。

n 用处: 判断两个数据是否整除。

publicclass Demo02Operator {

publicstaticvoidmain(String[] args) {

inta = 5;

intb = 3;

System.out.println(a / b);//1

System.out.println(a % b);//2

}

}

l +的多种用法

n 数字相加

n 字符相加: 拿字符在计算机中底层存储对应的数据值来参与运算的

n 字符串相加: 这里的+其实不是加法,而是字符串连接符;字符串和其他类型的数据做拼接,结果是字符串类型的。

publicclass Demo03Operator {

publicstaticvoidmain(String[] args) {

//1.整数的加法

inta = 10;

intb = 20;

System.out.println(a + b);

System.out.println("------------------");

//2.字符参与加法操作

charc = ‘0‘;

charc2 = ‘a‘;

System.out.println(a + c);

System.out.println(a + c2);

System.out.println("------------------");

//3.字符串参与加法操作

System.out.println("hello" + a);

System.out.println("hello" + a+ b); //"hello"+10="hello10",然后再和b进行拼接

System.out.println(a + b + "hello");//从左到右依次计算,先求和,在连接

}

}

l ++、--的用法

n ++,--运算符:对变量做加1或者减1操作

n ++,--既可以写在变量的后面,也可以写在变量的前面

n 单独使用:

++,--无论是写在变量的前面还是后面,结果是一样的;

n 和其它操作混合使用:

如果++,--写在变量的后面,先拿变量本来的值参与操作,结束后变量做++,--;

如果++,--写在变量的前面,先把变量做++,--,再用改变后的值参与操作;

publicclass Demo04Operator {

publicstaticvoidmain(String[] args) {

inta = 10;

System.out.println("a:" + a);

// 单独使用

// a++;

// ++a;

//System.out.println("a:" + a);

// 参与操作使用

// intb = a++;

intb = ++a;

System.out.println("a:" + a);

System.out.println("b:" + b);

}

}

3.3     赋值运算符

l 基本的赋值运算符:=

l 扩展的赋值运算符:+=、-=、*=、/= 、%=

n 把左边和右边的结果赋值给左边。

n 注意:左边不能是常量

n 隐含了一个强制类型转换.

publicclass Demo05Operator {

publicstaticvoidmain(String[] args) {

// 把10赋值给int类型的变量a

inta = 10;

// += 把左边和右边的数据进行运算,最后赋值给左边,左边的只能是变量

a +=10;// 相当于a = a + 10

System.out.println("a:" + a);

System.out.println("----------------------");

shorts = 10;

// s += 20;// 相当于 s = s + 20;

s = (short) (s +20);

System.out.println("s:" + s);

}

}

3.4     关系运算符

l ==,!=,>,<,>=,<=

l 关系运算符的结果都是boolean型,也就是要么是true,要么是false。

l 注意事项

n 关系运算符“==”不能误写成“=”。

publicclass Demo06Operator {

publicstaticvoidmain(String[] args) {

inta = 10;

intb = 20;

intc = 10;

System.out.println(a == b);

System.out.println(a == c);

System.out.println("-----------------");

System.out.println(a != b);

System.out.println(a != c);

System.out.println("-----------------");

System.out.println(a>b);

System.out.println(a>c);

System.out.println("-----------------");

System.out.println(a>= b);

System.out.println(a>= c);

System.out.println("-----------------");

intx = 3;

inty = 4;

//System.out.println(x == y);

//System.out.println(x = y);// 把y赋值给x,把x的值输出

booleanbb = (x == y);

// 报错

// boolean cc= (x = y);

intcc = (x = y);

}

}

3.5     逻辑运算符

l 作用:逻辑运算符用于连接布尔型表达式,在Java中不可以写成3<x<6,

应该写成x>3 &&x<6 。

l 基本使用:&(与),|(或),^(异或),!(非)

n 与:&      有false则false

n 或:|       有true则true

n 异或:^     相同则false,不同则true

n 非:!        true则false,false则true

publicclass Demo07Operator {

publicstaticvoidmain(String[] args) {

inta = 10;

intb = 20;

intc = 30;

System.out.println((a>b) & (a>c));// false & false

System.out.println((a<b) & (a>c)); // true & false

System.out.println((a>b) & (a<c)); // false & true

System.out.println((a<b) & (a<c)); // true & true

System.out.println("---------------");

System.out.println((a>b) | (a>c));// false | false

System.out.println((a<b) | (a>c)); // true | false

System.out.println((a>b) | (a<c)); // false | true

System.out.println((a<b) | (a<c)); // true | true

System.out.println("---------------");

System.out.println((a>b) ^ (a>c));// false ^ false

System.out.println((a<b) ^ (a>c)); // true ^ false

System.out.println((a>b) ^ (a<c)); // false ^ true

System.out.println((a<b) ^ (a<c)); // true ^ true

System.out.println("---------------");

System.out.println((a>b)); // false

System.out.println(!(a>b)); // !false

System.out.println(!!(a>b)); // !!false

}

}

l &&和&的区别

n 单&时,左边无论真假,右边都进行运算;

n 双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。

n “|”和“||”的区别同理,双或时,左边为真,右边不参与运算。

publicclass Demo08Operator {

publicstaticvoidmain(String[] args) {

inta = 10;

intb = 20;

intc = 30;

System.out.println((a>b)&& (a>c));// false && false

System.out.println((a<b)&& (a>c));// true && false

System.out.println((a>b)&& (a<c));// false && true

System.out.println((a<b)&& (a<c));// true && true

System.out.println("---------------");

System.out.println((a>b) || (a>c));// false || false

System.out.println((a<b) || (a>c)); // true || false

System.out.println((a>b) || (a<c)); // false || true

System.out.println((a<b) || (a<c)); // true || true

System.out.println("---------------");

intx = 3;

inty = 4;

//System.out.println((x++ > 4) & (y++ > 5)); // false & false

System.out.println((x++ > 4) && (y++> 5)); // false && false

System.out.println("x:" + x);

System.out.println("y:" + y);

}

}

3.6     三元运算符

l 基本使用

n 格式

(关系表达式)?表达式1:表达式2;

如果条件为true,运算后的结果是表达式1;

如果条件为false,运算后的结果是表达式2;

n 示例:

获取两个数中大数。

int x=3,y=4,z;

z = (x>y)?x:y;//z变量存储的就是两个数的大数。

publicclass Demo09Operator {

publicstaticvoidmain(String[] args) {

inta = 10;

intb = 20;

intc = (a>b) ? a : b;

System.out.println("c:" + c);

}

}

l 练习

n 比较两个数据是否相同

    publicclass Demo10Operator {

publicstaticvoidmain(String[] args) {

// 定义两个int类型的变量

inta = 10;

intb = 20;

booleanflag = (a == b) ? true: false;

// booleanflag = (a == b);

System.out.println(flag);

}

}

n 获取三个整数中的最大值

    public class Demo11Operator {

publicstaticvoidmain(String[] args) {

// 定义三个int类型的变量

inta = 10;

intb = 30;

intc = 20;

// 先比较两个整数的大值

inttemp = ((a>b) ? a : b);

intmax = ((temp>c) ? temp : c);

System.out.println("max:" + max);

}

}

第4章    键盘录入Scanner类

4.1     概述

我们目前在写程序的时候,数据值都是固定的,但是实际开发中,数据值肯定是变化的,所以,把数据改进为键盘录入,提高程序的灵活性。

4.2     引用数据类型的使用格式

与定义基本数据类型变量不同,引用数据类型的变量定义及赋值有一个相对固定的步骤或格式。

1.导包:

使用import导包,在类的所有代码之前导包(找到要使用的类型), java.lang包下的所有类无需导入,可以直接使用

2.定义变量,并创建对象赋值:

数据类型  变量名  =  new 数据类型();

3.调用方法,每种引用数据类型都有其功能,我们可以调用该类型实例的功能:

变量名.方法名();

4.3     基本使用步骤(目前先记住使用)

l 导包(位置放到class定义的上面)

import java.util.Scanner;

l 创建对象

Scanner sc = newScanner(System.in);

l 调用方法接收数据

int x =sc.nextInt();

    public class Demo01Scanner {

public static void main(String[] args) {

//创建键盘录入数据的对象

Scanner sc= new Scanner(System.in);

//接收数据

System.out.println("请录入一个整数:");

inti = sc.nextInt();

//输出数据

System.out.println("i:"+i);

}

}

4.4     练习

l 键盘输入两个数据并求和

public class Demo02Scanner {

public static void main(String[] args) {

// 创建对象

Scanner sc= new Scanner(System.in);

// 接收数据

System.out.println("请输入第一个数据:");

inta = sc.nextInt();

System.out.println("请输入第二个数据:");

intb = sc.nextInt();

// 对数据进行求和

intsum = a + b;

System.out.println("sum:"+ sum);

}

}

l  键盘录入三个数据获取最大值

public class Demo04Scanner {

public static void main(String[] args) {

// 创建对象

Scanner sc= new Scanner(System.in);

// 接收数据

System.out.println("请输入第一个数据:");

inta = sc.nextInt();

System.out.println("请输入第二个数据:");

intb = sc.nextInt();

System.out.println("请输入第三个数据:");

intc = sc.nextInt();

// 如何获取三个数据的最大值

inttemp = (a>b ? a : b);

intmax = (temp>c ? temp : c);

System.out.println("max:" + max);

}

}

时间: 2024-07-29 04:42:45

Java基础 - 第二天 Eclipse、运算符、Scanner类的相关文章

Java基础知识强化29:Scanner类之Scanner类的概述

1.Scanner概述:         JDK5以后用于获取用户的键盘输入 2.Scanner的构造方法:         public Scanner (InputStream  source) 3.案例: 1 package cn.itcast_01; 2 3 /* 4 * Scanner:用于接收键盘录入数据. 5 * 6 * 前面的时候: 7 * A:导包 8 * B:创建对象 9 * C:调用方法 10 * 11 * System类下有一个静态的字段: 12 * public sta

复习java基础第二天(异常处理)

一.常见的异常类型: public class TestException { public static void main(String[] args) { int i = 10; //数学异常: java.lang.ArithmeticException int j = i / 0; System.out.println(j); int [] scores = new int[]{1, 2, 4, 5}; //数组下标越界异常: java.lang.ArrayIndexOutOfBound

Java基础12:深入理解Class类和Object类

Java基础12:深入理解Class类和Object类 Java中Class类及用法 Java程序在运行时,Java运行时系统一直对所有的对象进行所谓的运行时类型标识,即所谓的RTTI. 这项信息纪录了每个对象所属的类.虚拟机通常使用运行时类型信息选准正确方法去执行,用来保存这些类型信息的类是Class类.Class类封装一个对象和接口运行时的状态,当装载类时,Class类型的对象自动创建. 说白了就是: Class类也是类的一种,只是名字和class关键字高度相似.Java是大小写敏感的语言.

Java基础复习笔记系列 五 常用类

Java基础复习笔记系列之 常用类 1.String类介绍. 首先看类所属的包:java.lang.String类. 再看它的构造方法: 2. String s1 = “hello”: String s2 = “hello”:结论:s1 == s2. 字符串常量放在data区. 3. String s3 = new String("hello"); String s4 = new String("hello");结论:s3 != s4.但s3.equals(s4).

java基础(2)--运算符详解

java基础(2)--运算符详解 自增自减规则 自增自减就是常用的 a = a++ 或者 a = ++a;前者是后缀式,先把a赋值给a,再加一:后者是后缀式,先加一,在赋值给a;而且a++,++a并不是原子操作,在当线程环境下并不会出错,当放在多线程下时,就会出现数据错误的问题. public class Test01 { private static int a = 0; private static int b = 0; private static AtomicInteger atomic

Java基础--第二十五天

TCP协议: Socket类 构造方法: TCP程序,必须先开服务器端 成员方法 服务器端程序: 创建服务器端Socket对象: 监听连接: 获取输入流,并显示: 释放资源 ServerSocket类 网络编程 网络编程+反馈 大融合[所有的Java基础融合为一个实例] 正则表达式: 符合某种规则的字符串,常用于校验 规则: Pattern类 A:字符 x:任意字符表示任意字符本身 \\:反斜线字符[转义字符] \r:回车 \n:换行 B:字符类 [abc]:表示a,b,c任意字符一次 [^ab

Java基础--第二十六天

正则表达式的规则字符: A:字符 x 字符 x,任意字符代表自己本身. \\ 反斜线字符 \r      回车 \n     换行 B:字符类 [abc] a.b 或 c,任意字符一次. [^abc] 任何字符,除了 a.b 或 c [a-zA-Z] a 到 z 或 A 到 Z,两头的字母包括在内 [0-9] 任意的数字字符一次 C:预定义字符类 . 任意的字符 \d 数字:[0-9] \w 单词字符:[a-zA-Z_0-9] 单词字符:英文,数字,及_ D:边界匹配器 ^ 行的开头 $ 行的结

【Java基础08】内部类、枚举类、日期和时间、Math、Random

1 内部类 1.1 概念 大部分时候,类被定义成一个独立的程序单元,在某些情况下,也会把一个类放到另一个类的内部定义,这个定义在其他类内部的类就被称为内部类,包含内部类的类被称为外部类. 1.2 作用 1.提供更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类. 2.内部类成员可以直接访问外部类的私有数据,因为内部类被当成其外部类成员,同一个类的成员之间可以互相访问.但外部类不能访问内部类的实现细节,例如内部类的成员变量. 3.匿名内部类适合用于创建那些仅需要一次使用的类

Java基础--第二十三天

多线程:         多条执行单元 进程:正在运行的应用程序 线程:进程的执行单元,一条执行路径 迅雷下载,360清理 多线程程序实现: 线程依赖于进程存在,Thread类 子类继承 子类重写run方法 调用strart(),让线程启动,调用run()方法 同一个线程对象连续两次启动,报错:表示该线程状态有问题 getName()方法:标志不同线程,获取线程名称 setName():更改线程名字 线程随机性: 程序执行,抢占CPU资源,CPU在多个程序间切换. 第二种实现: 创建类,实现Ru