JAVA开始(基础篇)
数据类型
Boolean 1位
Byte 1个字节(8位)
Short 2个字节
Char 2个字节
Int 4个字节
Long 8个字节
默认类型
默认使用的是double和int,如果要使用float或者long需要在其数字后面加上F或者L
float ff=3.28F;
long lo=2000000000000000L;
Char为什么是两个字节
因为在C中char是ascll的字符集,最大为255,而java的char是Unicode的字符集,最大为65535,其容纳了各国的字符。
所以C中不可以使用汉字作为变量名,而java则可以
char ch1=1000;
char ch2='A';
char ch3='东';
char ch4='\r';
布尔类型
Boolean类型只占有一位,其并不像C语言可以实现非零即真,其值必须为true或者flase
boolean b1=100;//报错
boolean b2=true;
类型自动转换
小类型会自动转换为大类型
Byte->short->int->long->float->double
量与运算
变量与常量
类变量:变量会自动赋有初值零,归属于类对象,使用必须通过类对象
类静态变量:变量会自动赋有初值零,归属于类,最好使用类名调用
局部变量:局部变量无初值,必须手动赋值后才可以使用
常量:值不可变的量(final int II=10;)
作用域
局部变量的作用域为{ }

三目运算
int ii=3>8?1:2;//输出2
Switch()…case
其值可以是数字、字符、字符串,之前是不可以使用字符串的,但在JDK1.7即之后将可以使用字符串
位运算或逻辑运算
位运算:【&】、【|】、【~】、【^】(按位异或,相同返回0,不同返回1)
逻辑运算:【&】、【&&】、【|】、【||】、【!】

图片来源于尚学堂
例:
“~”和“!”的区别:
1.“~”二进制的按位去反,1为(0000 0001)2,~1=1111 1110
2.“!”逻辑取反,非0为真,0为假
数学运算
随机数
Double d=Math.random();//返回区间 [0,1)
指数运算
public static double pow(double a, double b)
System.out.println(Math.pow(2, 3));//输出:8.0
平方根
public static double sqrt(double a)
System.out.println(Math.sqrt(9));//输出:3.0
控制台输入
next() 接收一个字符串,空格或回车结束
nextLine() 接收一个字符串,回车结束
nextInt() 接收一个int类型数据
nextDouble() 接收一个double类型数据
nextBoolean() 接收一个boolean类型数据
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);//得到输入对象
String name=sc.nextLine();//获取一行字符串
int i=sc.nextInt();//获取数字
System.out.println("name="+name+" i="+i);//输出
}
}
转义字符的输出
【\】、【”】、【”】、【\n】
System.out.println("\\n");//输出:\n
异常检测
异常语句块
try {
//待检测异常语句
}catch(Exception e) {
//出现异常后的处理语句
}finally {
//必须会执行的语句
}
抛出异常
public class Main{
public static void main(String[] args) {
//调用函数时必须检测异常
try {
tt();
} catch (Exception e) {
System.out.println("----调用函数被抛出异常----");
e.printStackTrace();
}
}
//抛出异常
public static void tt() throws Exception{
int x=6/0;
}
}
JAVA环境
1、由图可知,三者为包含关系,JDK包含JRE,JRE包含JVM;
2、开发Java程序时必须要安装JDK
3、运行Java程序时有JRE就好了
4、JVM时虚拟机,JVM对应每个系统的虚拟机由官方提供,所以开发Java程序时可以不考虑每个平台的差异性,可以实现一处编程处处使用的效果。
5、JDK下载地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html

命令行的第一个java程序
代码:
随意新建一个目录Myjava,里面新建一个文件Dong.java
public class Dong{
public static void main(String[] args){
System.out.println("DongXiaoDong");//输出
}
}
进入目录
cd /d E:\Myjava
编译
编译后会出现同名的.class文件,此文件为虚拟机解释文件
javac Dong.java
执行
java Dong
运行结果

出现错误时:

编辑工具下载与安装
下载
官网下载
https://www.eclipse.org/downloads/
本文使用:
链接:https://pan.baidu.com/s/10ZDqTZbhnQy6sGnYmw0_tw
提取码:sxz2
安装

选择工作空间
工作空间是存放工程的地方,可以勾选下面的记住此次选择

新建工程

新建类

JAVA开始(基础篇)的更多相关文章
- 你所不知道的库存超限做法 服务器一般达到多少qps比较好[转] JAVA格物致知基础篇:你所不知道的返回码 深入了解EntityFramework Core 2.1延迟加载(Lazy Loading) EntityFramework 6.x和EntityFramework Core关系映射中导航属性必须是public? 藏在正则表达式里的陷阱 两道面试题,带你解析Java类加载机制
你所不知道的库存超限做法 在互联网企业中,限购的做法,多种多样,有的别出心裁,有的因循守旧,但是种种做法皆想达到的目的,无外乎几种,商品卖的完,系统抗的住,库存不超限.虽然短短数语,却有着说不完,道不 ...
- java 线程基础篇,看这一篇就够了。
前言: Java三大基础框架:集合,线程,io基本是开发必用,面试必问的核心内容,今天我们讲讲线程. 想要把线程理解透彻,这需要具备很多方面的知识和经验,本篇主要是关于线程基础包括线程状态和常用方法. ...
- JDBC-使用Java连接数据库-基础篇
这是小主第一次写Java连接数据库博客,初学Java之时,Java连接数据库是我最头疼的,不过经过一个月的学习,也差不多略有收获,所以给大家分享一下. Java连接数据库大约需要五大步骤: 创建数据库 ...
- Java编程基础篇第一章
计算机语言 人与计算机交流的方式. 计算机语言有很多种如:C语言,c++,Java等 人机交互 软件的出现实现了人与计算机之间的更好的交流(交互) 交互方式 图形化界面:便于交互,容易操作,简单直观, ...
- java面试基础篇(三)
1.Q:ArrayList 和 LinkedList 有什么区别? A:ArrayList查询快!LinkedList增删快.ArrayList是基于索引的数据接口,它的底层是数组.空间占用相对小一些 ...
- java面试基础篇(二)
上一篇,我们说了一下线程和Map,或许那些太抽象,不太好理解,也不太方便记忆,我们这次说一些简单的. 1.Q:java的基本数据类型有哪些? A:四种整数类型(byte.short.int.long) ...
- 新年在家学java之基础篇-高级类的特性
继承 extends 子类的共性代码都是继承自父类的,每个子类只要写自己特有的代码 class 子类 extends 父类 继承提高了代码的复用性,提供了多态的前提,但是不要为了某个功能去继承 子类不 ...
- 新年在家学java之基础篇--循环&数组
因为“野味肺炎”的肆虐,过年被迫宅家只能吃了睡.睡了吃.这么下次只能长膘脑子空空,不如趁此机会重新学习java基础,为日后做铺垫~ 循环结构: 几种循环:for(::),while(){},do{}w ...
- JAVA格物致知基础篇:用JAX-RS和Jersey打造RESTful Service
随着服务器的处理能力越来越强,业务需求量的不断累积,越来越多的公司开始从单一服务器,单一业务承载变成了多服务器,多业务承载的快速扩展的过程中.传统的方法很难满足和应付这种业务量的增长和部署方式的改变. ...
- java 开发基础篇1环境安装--eclipse安装教程
如何安装java环境 http://jingyan.baidu.com/article/a24b33cd59b58e19fe002bb9.html JDK download http://www.or ...
随机推荐
- Github项目备份与更新
需求 假如现在想对使用到的一些Github上的开源组件进行备份,采用自建Gitlab服务器的方式进行备份保存,并且组件需定时保持与Github更新. 总体步骤 组件备份- 整体步骤如下: a.搭建gi ...
- Fire! UVA - 11624 (两步bfs)
题目链接 题意 人要从迷宫走出去,火会向四个方向同时扩散 分析 两步bfs,先出火到达各地时的时间(设初始时间为0,人每走一步为1s,在着一步内火可以向四周可触及的方向同时扩散),然后在bfs人,人能 ...
- STM32 HAL库学习系列第7篇---定时器TIM 输入捕获功能
测量脉冲宽度或者测量频率 基本方法 1.设置TIM2 CH1为输入捕获功能: 2.设置上升沿捕获: 3.使能TIM2 CH1捕获功能: 4.捕获到上升沿后,存入capture_buf[0], ...
- Python 爬虫从入门到进阶之路(十四)
之前的文章我们已经可以根据 re 模块,Xpath 模块和 BeautifulSoup4 模块来爬取网站上我们想要的数据并且存储在本地,但是我们并没有对存储数据的格式有要求,本章我们就来看数据的存储格 ...
- 公司倒闭 1 年了,而我当年的项目上了 GitHub 热榜
公司倒闭 1 年多了,而我在公司倒闭时候做的开源项目,最近却上了 GitHub Trending,看着这个数据,真是不胜唏嘘. 缘起 2017 年 11 月份的时候,松哥所在的公司因为经营不善要关门了 ...
- Codeforces Gym101097I:Sticks (思维)
http://codeforces.com/gym/101097/attachments 题意:现在有k种颜色的木棍,每种颜色有ni根木棍,每根木棍有一个长度,问是否有三根木棍可以组成三角形,并且这三 ...
- Codeforces Gym100502G:Outing(缩点+有依赖的树形背包)
http://codeforces.com/gym/100502/attachments 题意:有n个点,容量为tol,接下来n个关系,表示选了第i个点,那么第xi个点就必须被选.问最多可以选多少个点 ...
- 我的那些年(12)~公司技术转行,我也跟着转到java了
回到目录 我的那些年(12)~公司技术转行,我也跟着转到java了 CTO换人了 微软技术栈不被认可经常被喷 技术统一向java转 换了mac book后,docker还是很占内存 学习springb ...
- 1. 全文搜索框架 Haystack
1.什么是Haystack Haystack是django的开源全文搜索框架(全文检索不同于特定字段的模糊查询,使用全文检索的效率更高 ),该框架支持Solr,Elasticsearch,Whoosh ...
- Nginx+Lua+MySQL/Redis实现高性能动态网页展现
Nginx结合Lua脚本,直接绕过Tomcat应用服务器,连接MySQL/Redis直接获取数据,再结合Lua中Template组件,直接写入动态数据,渲染成页面,响应前端,一次请求响应过程结束.最终 ...