java基础

java基础

一、学习建议

干!知识体系建立为第一目标。遇到难点不纠结,一个月后再回来看难点。

二、关于Java

1、java三个版本

java三个版本:JavaSE(标准版,个人电脑);JavaEE(企业版,定位在服务器);JavaME(微型版,消费性电子产品)

2、java特性和优势

  • 核心优势:跨平台

  • 其他优势:安全性、面向对象、简单、高性能、分布式、多线程

3、java应用程序的运行机制

编译型语言

java源程序.java,利用javac编译成字节码文件.class;最后利用虚拟机(JRE)解释执行。

4、JVM、JRE、JDK

JVM:java虚拟机,跟操作系统打交道

JRE:java运行时环境,运行java程序时需要

JDK:java开发工具包,开发程序

jdk包含jre,jre包含jvm

5、安装JDK

x86:32位 x64:64位

bin:二进制文件目录;lib:存放类库;src.zip:java源代码

环境变量配置—>测试JDK是否成功

6、java注意事项

  • 大小写敏感
  • 一个源文件至多只能声明一个public类
  • main方法是程序入口
  • 以分号为结束标记

三、java中的小概念

1、注释

类型:// ; /* /; /* */

2、标识符、关键字

变量名:myName;以字母,$,_开头

类名:TestIdentifer

3、变量

double,long (8个字节);int(4个字节)

变量分类:局部变量,成员变量,静态变量

局部变量声明并初始化后才能使用;成员变量自动初始化,从属于对象;静态变量从属于类。

4、常量

使用final修饰的叫符号常量。一旦被初始化后不能更改其值。

5、基本数据类型

char,boolean,[byte(1个字节),short(2)t,int(4),long(8)],float(4),double(8)

整型:八进制:0开头;十六进制:0x开头;二进制:0b开头。

浮点型:e2/E2(10的2次方);默认double类型,加F/f是float类型

浮点数不精确,不能做比较。如果一定要比较,用java.math下的BigInteger和BigDecimal.

字符型:用来表示在unicode编码表中的字符。双引号括起来的是字符串。转义字符

连接两个字符:""+‘a’+’\t’+‘b’

布尔型:if(flag)

6、运算符

整数运算:

若两个操作数有一个为long,则结果也为long;没有long时,结果为int。如果两个操作数有一个为double,结果为double;只有两个操作数都是float,结果才为float。

取模运算:取余,“余数”符号和左边操作数相同。

自增和自减

赋值和扩展运算符:+=,-=,*=,/=

关系运算符:结果是布尔值。char也可以用于数据的比较,会自动转为数字。

逻辑运算符:短路与&&、短路或||

位运算符:&(按位与)|^ << ~

12/2/2等于12>>2。3<<2相当于乘以两个2.

字符串连接符:

3+“4”输出–34;char做加法时作为整数运算

条件运算符:String type=score<60?“不及格”:“及格”;

6、类型转换

自动类型转换:是指容量小的数据类型可以自动转换为容量大的数据。可以将整型常量直接赋值给byte、 short、 char等类型变量,而不需要进行强制类型转换,只要不超出其表数范围即可。

强制类型转换:(type)var

7、Scanner

四、控制语句

任何软件和程序,本质上都是由“变量、选择语句、循环语句”组成。

1、选择

if

if…else…

if-else if-else

2、switch语句

switch语句会根据表达式的值从相匹配的case标签处开始执行,一直执行到break语句处或者是switch语句的末尾。

3、循环结构

当型;直到型

while;dowhile ;for

无限循环 for( ;; )=while(true)

break:终止整个循环;continue终止本次循环。

带标签的break和continue。outer标签

#打印100-150之间所有质数
outer:for(int i=101;i<150;i++) {
			for(int j=2;j<i/2;j++) {
				if(i%j==0) {
					continue outer;
				}
			}
			System.out.print(i+"  ");
}

4、方法

说明:形式参数(方法定义时的参数);实参(调用时);返回值;返回值类型

return 语句终止方法的运行并指定要返回的数据

Java中进行方法调用中传递参数时,遵循值传递的原则(传递的都是数据的副本)

方法重载:

1.不同的含义:形参类型、形参个数、形参顺序不同

2.只有返回值不同不构成方法的重载

5、递归

定义递归头。解答:什么时候不调用自身方法。如果没有头,将陷入死循环,也就是递归的结束条件。

递归体。解答:什么时候需要调用自身方法。

任何能用递归解决的问题也可以用循环解决。

#循环求n的阶乘
int a=10;
while(a>1){
    result*=a*(a-1);
    a-=2;
}

重载

5、递归

定义递归头。解答:什么时候不调用自身方法。如果没有头,将陷入死循环,也就是递归的结束条件。

递归体。解答:什么时候需要调用自身方法。

任何能用递归解决的问题也可以用循环解决。

#循环求n的阶乘
int a=10;
while(a>1){
    result*=a*(a-1);
    a-=2;
}

参考:https://www.sxt.cn/Java_jQuery_in_action/thirteen-animation-effects.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值