Day_01
Java基本点:
1.JDK安装包 在进行Java程序开发时,必须要用到JDK安装包中的各种包才能正常运行。其中包括:Bin包,JRE(JavaRunning Environment)以及工具包(其中包括了3000多种)。
2.Path配置
a.在使用非Java环境进行Java程序开发时,比如Windows自带的记事本时,要想进行程序执行,就得运用Dos命令,只是就得对计算机进行path配置数值(地址)。
Hello.Java(源文件)————(bin目录下的,此处就得对计算机进行Path配置)Javac.文件名(---.Java)————Jvav 文件名(---)。其中在这个期间计算机会自动生成一个Hello.class的文件,此文件是装载在虚拟机(JVM)中实行的。
b.Path配置的方法
(1)计算机(此电脑)-----右键-----属性-----高级设置----环境变量----系统变量----Path(找到JDK的安装目录的bin目录下这个路径:放到Path变量的最左边)。
(2)两种配置方式:1.在系统变量----新建变量名:Java_HOME,变量值:JDK的安装目录路径。2.在Path中配置:最左边%Java_HOME%\bin;
3.Java程序开发的两种固定语句
首先,每个程序的开头都必须有此语句:public class 例如hello(此为文件名,一个Java文件,只能有一个publicclass且必须类名要和文件名相同。)
a.一个可执行的Java程序,必须有一个入口程序,在Java中定义为main函数。固定形式为:public static void main(String[]args){
b.还有一个输出语句:System.out.println(),这句语句包含的意思是使用在System包中的out包中的println方法。
Day_02
快捷键:a.alt+/自动提示,代码补全;
b.ctrl+alt+向下:复制代码;
c.选中,ctrl+d:删除;
d.多行注释:ctrl+shift+/;
e.单行注释:选中,ctrl。
1.关键字:被Java赋予特定含义的单词
组成关键字,字母都的小写
2.标识符:一种规则
组成:(1)英文大小写;(2)数字字符;(3)--和$组成
a.各部分命名规则:
(1)包(目录)的命名。单级包,多级包字母全部小写,公司域名反写(后面再跟上某个部门) 举例:单级包 org ,多级包org.westos(westos是org的所属下级包)
(2)类和接口的命名。单的单词:首字母大写,其余单词小写。多个单词:驼峰规则 每个单词的首字母大写,其余都小写。
(3)变量和方法命名。单个单词:字母全部小写。多个单词:第一个单词都小写,后面单词开始首字母大写,其余都小写。
(4)常量的命名。单个单词:全部大写。多个单词:全部大写,单词与单词之间用---隔开。
常量分为 字面值常量,自定义常量(与关键字final有关:面向对象部分)
常量注意点(知识点:“+”在不同情况下对于常量有不同的意义)
例:"helloword"+'a'+1=helloa1
'a'+1+"helloword"=98helloword
b.注意事项:
(1)不能出现Java中的关键字。
(2)不能以数字开头。
(3)Java严格区分大小写。
3.运算符
(1)算术运算符.
基本:+,-,*,/,%(取余)
扩展:++ ,--。当单独使用时,不管++,--在前还是在后,都是自增(减)1。当参与运算时,要是++/--在前则先自增/减1,在进行运算;若是在后,则先进行运算,之后进行自增/减1
(2)赋值运算符.
基本:=
扩展:+=,-=,*=,、=,%=
将当前右边的数据与左边的数据进行相加,
之后再赋值给左边的数据
(3)关系(比较)运算符:<,<=,>,>=,=, ==, !=(返回值都是布尔型) 错误形式:int a=10,b=0
Boolean flag=(a==b) 正确
flag=(a=b) (mismatch)
(4)逻辑运算符。
基本:逻辑单与:&(且);逻辑单或:l(有true,则true);逻辑异或:^(相同为false,不同为true);逻辑非:!
扩展:【逻辑双与&&,逻辑单与&】共同点:都是并且之意。【逻辑双或ll,逻辑单或l】共同点:都是或之意。 两个扩展的区别:双与连接的左边的表达式如果是一个false,则右边不执行,具有短路效果。逻辑双或也有类似规则。
(5)位运算符
位与, 位或,位异或, ~(反码)
有0则为0 有1则为1 相同则为0,不同则为1 按位取反(底层对补码按位取反)
*一个数若是被相同的数位异或两次则结果为本身
<<左移, >>右移 >>>无符号右移
最左边的最高符号位丢弃,右边补齐 最高符号位为0,左边补齐0。 不管最高符号位是0还是
特点:该符号左边的数据*2的移动次幂 最高符号位为1,左边补齐1. 1,左边补齐0
3<<2=3*2^2 特点:左边的数据/2的移动次幂
24>>2=24/2^2=6
(6)三元运算符(三目运算符)
格式:(表达式)?true的结果:false的结果
若表达式成立则执行true的结果,否则进行false的结果。
例:球三个数的最大值
intm=10;
intn=50;
intz=20;
此时使用第三方实现
inttemp=(m>n)?m:n;
intmax=(temp>max)?temp:max;
(7)键盘录入
为了使我们的数据更符合开发的数据,因此灵活的引入键盘录入。
步骤:a.创建键盘录入对象:Scanner类:java.util包下的类,固定格式:Scanner sc=newScanner(System.in);
b.导包,位置在class和package之间,固定格式:import java.util.Scanner;
c.录入数据:适用对象名调用方法
int a=sc.nextInt();
d.输出
例:publicclass scannerhello{
Public static void main(String[] args)
Scanner sc=new Scanner(System.in);
System.out.println(“请输入一个数据”)
Int a=ssc.nexInt();
System.out.println(“输入的数据是:”+a);
}
*二进制(开头以0b开头),八进制(开头以0开头),十进制(世界上公认的阿拉伯数),十六进制(开头以0x开头,数字范围从0--9,之后为a,b,c,d,e,f分别表示10,11,12,13,14,15)的互相转换【要是运用工具进行转换,必须使用jdk1.7以上包括1.7】
进制:数据进制的方式
(1)位权展开法a.(从任意进制转换到十进制)
系数:当前数据中每一位对应的数据该本身;
基数:求X进制到十进制的转换,基数x
权:给基数从右开始并且从0开始编号。
例:将0b1100100换算成十进制
6 5 4 3 2 1 0
原式=1*2^6+1*2^5+0+0+1*2^2+0+0=64+32+4=100
b.(从十进制到任意进制)
如果到x进制,那么除数就是x,一直初到商为0,余数反转。
例:116转换到二进制。116/2 除数:58,余数:0;58/2 除数:29,余数:0;
29/2 除数:14,余数:1;14/2 除数:7,余数:0;7/2 除数3,余数:1;
3/2 除数:1,余数:1;1/2除数:0,余数:1,所以转化成的二进制是0b1110100.
(2)8421码
每一个二进制都对应一个固定值
二进制:1 1 1 1 1 1 1 1
十进制:128 64 32 16 8 4 2 1
Question:x进制转化成y进制
方式一:x进制先转换成十进制,然后十进制再转换成y进制。
方式二:拆分组合法。有符号位的数据表示法
a. 在了这里引入几个名词:原码,反码,补码。之所以介绍是因为计算基底层对数据的计算通过补码进行计算的。
b. 正数的原码,反码,补码一样,最高符号位数是1。而负数,反码按位取反,补码则为反码末尾加1,最高符号位为1.
例:-7 最高符号位 数值位
1 0000111 原码
1 1111000 反码
1 1111001 补码
(8)变量
a.三要素:1。比喻对变量有一个限定的数据类型(a.基本数据类型:整数型默认int;浮点型默认double;布尔型默认false. B.引用类型(面向对象))注:一般计算机会以默认类型为准,所以在变量名值后加上(L(推荐)或l)整数类型 (F或f)浮点类型. 定义变量时,不能重复定义,也不能数字开头。
b.默认类型提升:bytle,short,char之间不转换。但是一旦参与运算先提升int---long---float---double
例:bytleb1=3,b2=4,b;
b=b1+b2 错误。因为bytle型不可能接受一个int型的
正确形式:b=(bytle)(b1+b2) 属于强制类型转换 或者 b=3+4;